Barcode-reading system

ABSTRACT

This patent specification describes a barcode-reading system for a mobile device. The mobile device include an image sensor array for generating a color image of a target area. The color image includes sub-images each captured with a portion of the image sensor array sensitive to different bands of illumination. The barcode reading system may include an optic system configured to produce a targeting illumination pattern of a particular band of illumination passed by an optical filter within the target area. An image processing function of a barcode-reading application may create a grayscale composite image of a barcode by combining the sub-images. In combining the sub-images, a contribution from a sub-image captured by a portion of the image sensor array most sensitive to the particular band for the targeting illumination may be smaller than a contribution from the other two sub-images captured by other portions of the image sensor array.

CLAIM OF PRIORITY

This application is a continuation of U.S. patent application Ser. No.15/608,444 (“the '444 Application”), titled “Barcode-Reading System,”filed May 30, 2017, with inventors Ming Lei, George Powell, and RyanHoobler. The '444 Application is a continuation of U.S. patentapplication Ser. No. 15/207,484, which issued as U.S. Pat. No. 9,665,760(“the '760 Patent”) on May 30, 2017, titled “Barcode-Reading System,”filed Jul. 11, 2016, with inventors Ming Lei, George Powell, and RyanHoobler. The '760 Patent claims the benefit of U.S. Provisional PatentApplication No. 62/318,216, titled “Barcode-Reading System,” filed Apr.5, 2016, with inventors Phil Utykanski and Ming Lei.

BACKGROUND

Smartphones and other types of portable, hand-held computing devices,such as tablet computers, are in widespread use today, most often inconnection with entertainment, communications and office productivity.Most smartphones include a camera, and applications have been developedfor using the camera to read barcodes. In a typical known application animage feed from the camera is displayed on the display screen of thesmartphone.

SUMMARY

This patent specification relates generally to a mobile device havingbarcode-reading capabilities and a barcode-reading enhancement accessoryfor the mobile device.

In accordance with one embodiment, a barcode reading system for a mobiledevice is disclosed. The mobile device comprises a processor, a memory,a camera including a color image capture system including an imagesensor array for generating a color image of a target area, and a whitelight source. The white light source generates illumination encompassinga first band of illumination, a second band of illumination, and a thirdband of illumination. The color image may comprise a first sub-imagecaptured with a portion of the image sensor array sensitive to the firstband of illumination, a second sub-image captured with a portion of theimage sensor array sensitive to the second band of illumination, and athird sub-image captured with a portion of the image sensor arraysensitive to the third band of illumination. The barcode reading systemmay include a barcode reading accessory including an optic systempositioned within a field of illumination of the white light source whenthe barcode reading accessory is secured to the mobile device and abarcode reading application stored in the memory and executable by theprocessor.

The optic system may include an optical filter for passing a fourth bandof illumination generated by the white light source. One of the firstportion of the image sensor array, the second portion of the imagesensor array, and the third portion of the image sensor array may bemore sensitive to the fourth band of illumination than the other twoportions. The optic system may also include a collimating optic fornarrowing the field of illumination of the white light source to producea targeting illumination pattern of the fourth band of illuminationpassed by the optical filter within the target area.

The barcode reading application may include an image capture functionfor controlling the white light source and the camera to simultaneouslycapture the color image of the target area illuminated by illuminationgenerated by the white light source and filtered by the optical filter.The barcode reading application may also include an image processingfunction for creating a grayscale composite image of the barcode withinthe target area by combining each of the first sub-image, the secondsub-image, and the third sub-image using weights. A contribution from asub-image captured by a portion of the image sensor array most sensitiveto the fourth band of illumination may be smaller than a contributionfrom the other two sub-images captured by the other two portions of theimage sensor array. The barcode reading application may also include adecoder function for receiving the grayscale composite image of thebarcode and generating decoded data representing data encoded in thebarcode, and a relay function for sending the decoded data to a remoteserver via a wireless connection established between the mobile deviceand a network.

The collimating optic may include a lens and an aperture for narrowingand shaping the field of illumination of the white light source into thetargeting illumination pattern projected into the target area.

The contribution from the sub-image captured by the portion of the imagesensor array most sensitive to the fourth band of illumination may bezero.

The weights for combining the three sub-images may be selected bydetermining a first intensity profile, a second intensity profile, and athird intensity profile for each of the first sub-image, the secondsub-image, and the third sub-image, respectively, and utilizing acombination of the first intensity profile, the second intensityprofile, and the third intensity profile to select the weights forcombining each of the first sub-image, the second sub-image, and thethird sub-image for creating the grayscale composite image.

The first intensity profile may be a function of brightness and contrastof a portion of the first-sub image that includes a portion of thebarcode illuminated by the targeting illumination pattern, the secondintensity profile may be a function of brightness and contrast of aportion of the second-sub image that includes a portion of the barcodeilluminated by the targeting illumination pattern, and the thirdintensity profile may be a function of brightness and contrast of aportion of the third-sub image that includes a portion of the barcodeilluminated by the targeting illumination pattern.

In accordance with another embodiment, a barcode reading system for amobile device may include a barcode reading accessory including an opticsystem positioned within a field of illumination of the white lightsource when the barcode reading accessory is secured to the mobiledevice, and a barcode reading application stored in the memory andexecutable by the processor of the mobile device. The optic system mayinclude an optical filter for passing a fourth band of illuminationgenerated by the white light source, wherein one of the first portion ofthe image sensor array, the second portion of the image sensor array,and the third portion of the image sensor array is more sensitive to thefourth band of illumination than the other two portions. The opticsystem may also include a collimating optic for narrowing the field ofillumination of the white light source to produce a targetingillumination pattern within the target area of color of illuminationpassed by the optical filter.

The barcode reading application may include an image capture functionfor controlling the white light source and the camera to simultaneouslycapture the color image of the target area illuminated by illuminationgenerated by the white light source and filtered by the optical filter;an image processing function for creating a grayscale composite image ofthe barcode within the target area by combining two sub-images capturedby two portions of the image sensor array that are least sensitive tothe fourth band of illumination; a decoder function for receiving thegrayscale composite image of the barcode and generating decoded datarepresenting data encoded in the barcode; and a relay function forsending the decoded data to a remote server via a wireless connectionestablished between the mobile device and a network.

In accordance with another embodiment, a method of reading a barcodeutilizing a mobile device is disclosed. The method may include directingan operating system of the mobile device to obtain a barcode readingapplication from a remote application server and to install the barcodereading application in the memory for execution by the processor of themobile device; securing a barcode reading enhancement accessory to themobile device; and executing the barcode reading application by theprocessor. The barcode reading enhancement accessory may include anoptic system positioned within a field of illumination of the whitelight source of the mobile device when the barcode reading enhancementaccessory is secured to the mobile device. The optic system may includean optical filter for passing a fourth band of illumination generated bythe white light source, wherein one of the first portion of the imagesensor array, the second portion of the image sensor array, and thethird portion of the image sensor array may be more sensitive to thefourth band of illumination than the other two portions. The opticsystem may also include a collimating optic for narrowing the field ofillumination of the white light source to produce a targetingillumination pattern within the target area of color of illuminationpassed by the optical filter.

Executing the barcode reading application by the processor may includeexecuting an image capture function for controlling the white lightsource and the camera to simultaneously capture a color image of thetarget area illuminated by illumination generated by the white lightsource and filtered by the optical filter; executing an image processingfunction for creating a grayscale composite image of the barcode withinthe target area by combining each of the first sub-image, the secondsub-image, and the third sub-image by multiplying weights such that acontribution from a sub-image captured by a portion of the image sensorarray most sensitive to the fourth band of illumination may be smallerthan a contribution from the other two sub-images captured by the othertwo portions of the image sensor array; executing a decoder function forreceiving the grayscale composite image of the barcode and generatingdecoded data representing data encoded in the barcode; and executing arelay function for sending the decoded data to a remote server via awireless connection established between the mobile device and a network.

In accordance with another embodiment, an accessory for a mobile deviceis disclosed. The mobile device comprises a processor, a display screenon a generally planar face side of the mobile device, a memory, and awhite light source and a camera on a back side of the mobile device. Theback side is generally planar and parallel to the face side. The cameraincludes a camera lens and an image sensor. The accessory may include anoptic system positioned within a field of view of the camera and a fieldof illumination of the white light source when the accessory is securedto the mobile device. The optic system may include a sealed enclosure;at least one reflective surface, within the enclosure, for folding boththe field of view of the camera and the field of illumination of thewhite light source towards a target area beyond a top side of the mobiledevice; at least one first window to the sealed enclosure generallyparallel to the back side of the mobile device and through whichillumination from the white light source enters the sealed enclosure andillumination from the target area exits the sealed enclosure and isincident on the camera lens; and at least one second window to thesealed enclosure generally perpendicular to the back side of the mobiledevice and through which the illumination from the white light sourceexits the sealed enclosure to the target area and the illumination fromthe target area enters the sealed enclosure and is incident on the atleast one reflective surface.

In accordance with another embodiment, a barcode reading system for amobile device is disclosed. The mobile device comprises a processor, adisplay screen on a generally planar face side of the mobile device, amemory, and a white light source and a camera on a back side of themobile device. The camera comprises a camera lens and an image sensor.The barcode reading system may include a barcode reading accessorycomprising an optic system positioned within a field of view of thecamera and a field of illumination of the white light source when thebarcode reading accessory is secured to the mobile device, and a barcodereading application stored in the memory and executable by theprocessor.

The optic system may include a sealed enclosure; at least one reflectivesurface, within the sealed enclosure, for folding both the field of viewof the camera and the field of illumination of the white light sourcetowards a target area beyond a top side of the mobile device; at leastone first window to the sealed enclosure generally parallel to the backside and through which illumination from the white light source entersthe sealed enclosure and illumination from the target area exits thesealed enclosure and is incident on the camera lens; and at least onesecond window to the sealed enclosure generally perpendicular to theback side of the mobile device and through which the illumination fromthe white light source exits the sealed enclosure to the target area andthe illumination from the target area enters the sealed enclosure and isincident on the at least one reflective surface.

The barcode reading application may include an image capture functionfor controlling the white light source and the camera to capture animage of a barcode presented in the target area; a decoder function forreceiving the image of the barcode and generating decoded datarepresenting data encoded in the barcode; and a relay function forsending the decoded data to a remote server via a wireless connectionestablished between the mobile device and a network.

In accordance with another embodiment, a method of reading a barcodeutilizing a mobile device is disclosed. The mobile device comprises aprocessor, a display screen on a generally planar face side of themobile device, a memory, and a white light source and a camera on a backside of the mobile device. The method may include directing an operatingsystem of the mobile device to obtain a barcode reading application froma remote application server and to install the barcode readingapplication in the memory for execution by the processor; securing abarcode reading enhancement accessory to the mobile device; andexecuting a barcode reading application by the processor.

The barcode reading enhancement accessory may include an optic systempositioned within a field of view of the camera and a field ofillumination of the white light source when the barcode readingenhancement accessory is secured to the mobile device. The optic systemmay include a sealed enclosure; at least one reflective surface, withinthe sealed enclosure, for folding both the field of view of the cameraand the field of illumination of the white light source towards a targetarea beyond a top side of the mobile device; at least one first windowto the sealed enclosure generally parallel to the back side and throughwhich illumination from the white light source enters the sealedenclosure and illumination from the target area exits the sealedenclosure and is incident on the camera lens; and at least one secondwindow to the sealed enclosure generally perpendicular to the back sideof the mobile device and through which the illumination from the whitelight source exits the sealed enclosure into the target area and theillumination from the target area enters the sealed enclosure and isincident on the at least one reflective surface.

Execution of the barcode reading application may include execution of animage capture function for controlling the white light source and thecamera to capture an image of a barcode presented in the target areabeyond the top side of the mobile device; execution of a decoderfunction for receiving the image of the barcode and generating decodeddata representing data encoded in the barcode; and execution of a relayfunction for sending the decoded data to a remote server via a wirelessconnection established between the mobile device and a network.

In accordance with another embodiment, an accessory for a mobile deviceis disclosed. The mobile device comprises a processor, a display screenon a generally planar face side of the mobile device, a memory, and awhite light source and a camera on a back side of the mobile device. Theaccessory may include an optic system repositionable between an activeposition and an inactive position. In case where the accessory issecured to the mobile device, the optic system may be positioned withina field of view of the camera and a field of illumination of the whitelight source in the active position, and the field of view of the cameraand the field of illumination of the white light source are unobstructedby any portion of the optic system in the inactive position. The opticsystem, when in the active position, may be configured to fold both thefield of view of the camera and the field of illumination of the whitelight source towards a target area beyond a top side of the mobiledevice. The top side is an edge of the mobile device between the faceside and the back side.

In accordance with another embodiment, a barcode reading system for amobile device is disclosed. The mobile device comprises a processor, adisplay screen on a generally planar face side of the mobile device, amemory, and a white light source and a camera on a back side of themobile device. The barcode reading system may include an accessoryincluding an optic system that is repositionable between an activeposition and an inactive position, and a barcode reading applicationstored in the memory and executable by the processor.

In case where the accessory is secured to the mobile device, the opticsystem may be positioned within a field of view of the camera and afield of illumination of the white light source in the active position,and the field of view of the camera and the field of illumination of thewhite light source may be unobstructed by any portion of the opticsystem in the inactive position. The optic system, when in the activeposition, may be configured to fold both the field of view of the cameraand the field of illumination of the white light source towards a targetarea beyond a top side of the mobile device. The top side is an edge ofthe mobile device between the face side and the back side.

The barcode reading application may include an image capture functionfor controlling the white light source and the camera to capture animage of a barcode presented in the target area beyond the top side ofthe mobile device; a decoder function for receiving the image of thebarcode and generating decoded data representing data encoded in thebarcode; and a relay function for sending the decoded data to a remoteserver via a wireless connection established between the mobile deviceand a network.

In accordance with another embodiment, a method of reading a barcodeutilizing a mobile device is disclosed. The mobile device comprises aprocessor, a display screen on a generally planar face side of themobile device, a memory, and a white light source and a camera on a backside of the mobile device. The method may include directing an operatingsystem of the mobile device to obtain a barcode reading application froma remote application server and to install the barcode readingapplication in the memory for execution by the processor; securing abarcode reading enhancement accessory to the mobile device; andexecuting the barcode reading application by the processor.

The barcode reading enhancement accessory may include an optic systemrepositionable between an active position and an inactive position. Incase where the barcode reading enhancement accessory is secured to themobile device, the optic system may be positioned within a field of viewof the camera and a field of illumination of the white light source inthe active position, and the field of view of the camera and the fieldof illumination of the white light source may be unobstructed by anyportion of the barcode reading enhancement accessory in the inactiveposition. The optic system, when in the active position, may beconfigured to fold both the field of view of the camera and the field ofillumination of the white light source towards a target area beyond atop side of the mobile device.

Execution of the barcode reading application may include execution of animage capture function for controlling the white light source and thecamera to capture an image of a barcode presented in the target areabeyond the top side of the mobile device; execution of a decoderfunction for receiving the image of the barcode and generating decodeddata representing data encoded in the barcode; and execution of a relayfunction for sending the decoded data to a remote server via a wirelessconnection established between the mobile device and a network.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example of a barcode-reading system.

FIG. 2A is a block diagram of an exemplary mobile device useful in abarcode-reading system.

FIGS. 2B and 2C show a back side surface and a face surface of anexemplary mobile device that may be used in the barcode-reading system.

FIG. 2D shows an exemplary tip/ring/ring/sleeve (TRRS) connector.

FIG. 2E shows an image output format.

FIG. 3A is a flow diagram of an exemplary process for an operation of anapplication retrieval system.

FIG. 3B is a flow diagram depicting an exemplary process for anoperation of an application server.

FIG. 3C shows an exemplary structure of a database of applications fordownloading.

FIGS. 4A and 4B illustrate an exemplary corner-positioned attachmentuseful in a barcode-reading enhancement system.

FIGS. 5A and 5B illustrate an exemplary encapsulating attachment usefulin a barcode-reading enhancement system.

FIGS. 6A and 6B illustrate an exemplary mounted attachment useful in abarcode-reading enhancement system.

FIGS. 7A and 7B illustrate an exemplary target-generating mechanismuseful for implementing in an attachment in a barcode-readingenhancement system.

FIGS. 8A-8D illustrate exemplary targeting patterns useful forimplementing in an attachment of a barcode-reading enhancement system.

FIG. 9 illustrates an exemplary exposure illumination system useful forimplementing in an attachment of a barcode-reading enhancement system.

FIGS. 10A-10D illustrate exemplary supplementary optics useful forimplementing in an attachment of a barcode-reading enhancement system.

FIGS. 11A and 11B illustrate an exemplary attachment for abarcode-reading enhancement system which includes a target-generatingmechanism and supplementary optics.

FIGS. 12A-12D illustrate an exemplary attachment for a barcode-readingenhancement system which includes a target-generating mechanism.

FIG. 13 illustrates an exemplary attachment for a barcode-readingenhancement system with a target-generating mechanism, an exposureillumination system and supplementary optics useful for implementing inan attachment of a barcode-reading enhancement system.

FIG. 14 illustrates an exemplary attachment for a barcode-readingenhancement system.

FIG. 15 illustrates an exemplary attachment for a barcode-readingenhancement system which includes a target-generating mechanism andsupplementary optics.

FIG. 16 illustrates exemplary methods useful for an application for abarcode-reading enhancement system.

FIG. 17 illustrates an exemplary state machine useful for an applicationfor a barcode-reading enhancement system.

FIG. 18A illustrates exemplary autofocus options.

FIG. 18B illustrates exemplary resolution binning methods that can beused to reduce the resolution of a barcode image.

FIG. 19A depicts an exemplary method of target and exposure illuminationand shutter control in accordance with one embodiment.

FIG. 19B depicts another exemplary method of target and exposureillumination and shutter control in accordance with another embodiment.

FIG. 19C represents a filtering arrangement for the targetingillumination and the supplemental optics.

FIG. 20A is a state machine diagram depicting two states of operation ina barcode-reading application in accordance with one embodiment.

FIG. 20B is a state machine diagram depicting three states of operationin a barcode-reading application in accordance with another embodiment.

FIG. 21 shows examples of a data structure of a license key inaccordance with some embodiments.

FIG. 22A depicts an exemplary operation of a license server.

FIG. 22B depicts an exemplary operation of a license server for renewinga license for a mobile device prior to expiration of the license.

FIG. 22C depicts an exemplary database for recording pre-paid licensesthat may have been purchased by an individual, organization, company orother group of users.

FIG. 23 is an exploded view of an exemplary barcode-reading enhancementaccessory configured as an encapsulating attachment.

FIGS. 24A and 24B are sectional views of the case encasing a mobiledevice.

FIG. 25 shows an exemplary outer case and exemplary inner carriages thatmay be accommodated in the outer case.

FIG. 26 shows an exemplary barcode-reading enhancement accessoryconfigured as an encapsulating attachment in accordance with anotherembodiment.

FIG. 27 shows the barcode-reading enhancement accessory of FIG. 26 witha mobile device encased into the cavity of the case.

FIG. 28 shows the combined state of the case and the handle assembly ofthe barcode-reading enhancement accessory of FIG. 26.

FIG. 29 is a cutaway view of an accessory with the handle assemblyassembled with a case to encase a mobile device.

FIG. 30 shows another exemplary barcode-reading enhancement accessoryconfigured as an encapsulating attachment in accordance with anotherembodiment.

FIG. 31 depicts a case and a platform of another exemplarybarcode-reading enhancement accessory along with a mobile device.

FIG. 32 shows an exemplary barcode-reading enhancement accessory with adifferent latching mechanism.

FIG. 33 shows an exemplary case coupled to a platform, which isconfigured as an encapsulating attachment.

FIG. 34 depicts an exemplary image processing method for capturing abarcode while a targeting illumination is on.

FIG. 35A shows a composite image of the first, second, and third channelimages.

FIGS. 35B-35D show first channel, second channel and third channelimages, respectively.

FIGS. 36A and 36B show a grayscale image resulting from combining thefirst, second, and third channel images with different combining ratios.

FIGS. 37A-37C depict a perspective view of a mobile device encapsulatedwithin an encapsulating attachment in accordance with one embodiment.

FIG. 38 depicts an encapsulating attachment in accordance with anotherembodiment.

FIGS. 39A and 39B are an assembled view and an exploded view of anoptics module, respectively.

FIGS. 40A and 40B are cross-sectional views of the optics module alongthe A-A′ and B-B′ lines shown in FIG. 39A.

DETAILED DESCRIPTION

FIG. 1 depicts a system 10 according to one embodiment of the presentapplication wherein mobile devices 18 a-18 d obtain: i) at least onebarcode-reading application 24 from an application server 22 a or 22 b;and ii) obtain licensing (e.g., a license key 26) necessary for theoperation of the at least one barcode-reading application 24 on themobile devices 18 a-18 d from a licensing server 21 a or 21 b.

As used in this patent specification and the accompanying claims, theterm “mobile device” will be used to describe a portable, hand-heldcomputing device that comprises a camera. As indicated above, oneexample of a mobile device is a smartphone. Another example of a mobiledevice is a tablet computer. Yet another example is a hybridtablet/smartphone device, often nicknamed a “phablet.”

The application server may be, for example, a local application server22 a or a remote application server 22 b. Similarly, the license servermay be a local license server 21 a or a remote license server 21 b. Theapplication server and the license server may operate on distincthardware or may operate on the same hardware server. For example, thelocal application server 22 a and the local license server 21 a mayoperate on the same hardware server 27 or on distinct hardware servers,each coupled to a local area network (LAN) 12. Similarly, the remoteapplication server 22 b and the remote license server 21 b may operateon the same hardware server 29 or on distinct hardware servers, eachcoupled to the Internet 16.

The system 10 may include a LAN 12 to which each of the localapplication server 22 a and the local license server 21 a are connected.The LAN 12 may further include at least one wireless access point 14enabling LAN communications with mobile devices (for example, mobiledevices 18 b and 18 c) as well as other computing systems such as a hostcomputer 19 and/or a charging station 21 (e.g. a station for providingpower to the mobile device 18 for charging its battery).

The LAN 12 may be coupled to the Internet 16 via a router 13. AlthoughFIG. 1 depicts the LAN 12 coupled to the Internet 16 via a single router13, such connections may employ multiple routers and firewall systems,including demilitarized zone (DMZ) networks.

Referring to FIG. 2A in conjunction with FIG. 1, each of the mobiledevices 18 a-18 d may include a wireless communication system 52 foroperating within a wireless network environment. The wirelesscommunication system 52 may comprise any permutation of: i) a local areanetwork (LAN) communications module 56, ii) a wide area network (WAN)communications module 54, and/or iii) a wireless point-to-pointcommunication interface 58.

The LAN communications module 56 may utilize Wi-Fi™ (IEEE 802.11) orsimilar wireless local area communication protocols for communicationwith a wireless access point 14 of a wireless portion of a LAN 12, suchthat the mobile device itself may be an addressable endpoint on the LAN12, i.e., the mobile device may be assigned an IP address and may becapable of IP communications with other devices over the LAN 12 using IPprotocols such as Transmission Connection Protocol (TCP), UniformDatagram Protocol (UDP), etc. The wireless access point 14 and the LANcommunications module 56 may function in accordance with any knownwireless communications protocol, including but not limited to the IEEE802.11 standards, which are sometimes referred to as Wi-Fi™. As will bediscussed in more detail, a mobile device, 18 b for example, utilizingits LAN communications module 56 may obtain at least one barcode-readingapplication 24 from an application server 22 a or 22 b and its licensekey from a license server 21 a or 21 b via the LAN 12 and, asapplicable, the Internet 16.

The WAN communications module 54 may utilize Wideband Code DivisionMultiple Access (WCDMA), High Speed Packet Access (HSPA), cdma2000, LongTerm Evolution (LTE) technology, or other similar long-range wirelesscommunication protocols for communication with a wide area wirelessInternet service provider (ISP). For example, the ISP may be a mobiletelephone service provider and the wireless WAN communications module 54may be a system for wireless data communications with the access towersof the wireless ISP network 17 (i.e., WAN). Such wireless datacommunications may occur in accordance with any suitable wirelesscommunication standard, including Third Generation (3G) standards (e.g.,Universal Mobile Telecommunication Systems (UMTS), cdma2000, EnhancedData Rate for GSM Evolution (EDGE), etc.) and/or Fourth Generation (4G)standards (e.g., LTE, Mobile WiMAX, etc.). The wireless ISP network 17may assign an IP address to the mobile device such that the mobiledevice may be capable of IP communications with other devices over thewireless ISP network 17 using IP protocols such as TCP, UDP, or thelike.

Remote devices (e.g., devices coupled to the Internet 16) may belogically connected to the LAN 12 using a Virtual Private Network (VPN)technology. As such, a mobile device, 18 d for example, coupled tocommunicate with the wireless ISP network 17 utilizing its WANcommunications module 54 may, utilizing a VPN technology, be an endpointon the LAN 12. As such, a mobile device 18 may obtain at least onebarcode-reading application 24 from the remote application server 22 b(or local application server 22 a utilizing VPN technologies) and itslicense key 26 from the remote license server 21 b (or the local licenseserver 21 a utilizing VPN technologies) via the wireless ISP network 17and, as applicable, the Internet 16.

The wireless point-to-point communication interface 58 may form awireless point-to-point communication link with another compatiblesystem, such as a host computer 19 and/or charging station 21, utilizingBluetooth® or similar wireless point-to-point communication protocols.The host computer 19 and/or charging station 21 in turn includes a wiredand/or wireless LAN interface for communication with a switch (notshown) or the wireless access point 14 of the LAN 12 such that the hostcomputer 19 may be an addressable endpoint on the LAN 12. As will bediscussed in more detail, a mobile device, 18 a or 18 c for example,coupled to communicate with the host computer 19 utilizing its wirelesspoint-to-point communication interface 58 may obtain at least onebarcode-reading application 24 from an application server 22 a or 22 band its license key 26 from a license server 21 a or 21 b via itspoint-to-point connection to the host computer 19 and/or chargingstation 21 which communicates with the servers via the LAN 12 and, asapplicable the Internet 16.

FIGS. 2B and 2C illustrate a back surface and a face surface of anexemplary mobile device 18, respectively. Referring to FIGS. 2B and 2C,the mobile device 18 may comprise a housing 28 with a plurality ofexternal surfaces such as a face surface 72 and a back surface 74 whichis generally parallel to the face surface 72 and separated from the facesurface 72 by four (4) edge surfaces (each orthogonal to, and extendingabout the perimeter of, both the face surface 72 and the back surface74, including a bottom edge 76, a top edge 78 (which is parallel to thebottom edge 76), a right edge 80 and a left edge 82 (which is parallelto the right edge 80).

The face surface 72 may include a user interface such as a capacitivemulti-touch display screen 66 (e.g., with a glass cover), which is shownin FIG. 2A, and may define the face surface 72 of the housing 28.

Referring to FIG. 2C, the nomenclature bottom edge 76, top edge 78,right edge 80, and left edge 82 have been chosen because they correspondto the bottom, top, right, and left sides of the display screen 66 ofthe face surface when the display screen 66 is operated in a portraitmode. Each of the right edge 80 and the left edge 82 may be of equallength and longer than each of the bottom edge 76 and the top edge 78(which may also be of equal length).

Referring to FIG. 2A, the mobile device 18 may include a processor 44and a memory 46. The processor 44 may be embodied as a combination ofone or more microprocessors, microcontrollers, digital signal processors(DSP), or the like, and, when operating, may execute instructions (inthe form of an operating system and/or applications) stored in thememory 46. The memory 46 may be any component capable of storingelectronic information, including an operating system and/or applicationinstructions executable by the processor 44, and may be embodied asread-only memory (ROM), random access memory (RAM), magnetic diskstorage media, optical storage media, flash memory devices, on-boardmemory included with the processor 44, erasable programmable read-onlymemory (EPROM), electrically erasable programmable read-only memory(EEPROM), and/or registers, etc.

The memory 46 may include an operating system 48, the barcode-readingapplication 24, the license key 26, one or more other applications 50 a,50 b, and a data buffer including an image data buffer 89. In operation,the processor 44 may execute instructions embodied in the operatingsystem 48, the barcode-reading application 24, and each of the otherapplications 50 a, 50 b. Hardware circuits 90 interface the processor 44with peripheral systems including, but not limited to, a (multi-touch)display screen 66, a wireless communication system 52, a hardwiredpoint-to-point communication interface 60, an audio interface 68, acamera assembly 36, and a white light source 84 (e.g., an illuminator ora flash for utilizing the camera assembly 36 for photography).

The hardwired point-to-point communication interface 60 may utilizeUniversal Asynchronous Receiver/Transmitter (UART), Universal Serial Bus(USB), and similar communication protocols for communicating with acompatible system connected to a data connector 64 b (which may be apart of a single power/data connector 64 such as a USB connector or anApple® Lightning Connector®).

The audio interface 68 may include circuits for generating analog audiosignals on a speaker connector 34 a and receiving analog microphoneinput on a microphone connector 34 b. The speaker connector 34 a and themicrophone connector 34 b may be embodied as a singletip/ring/ring/sleeve (TRRS) connector typically referred to as ahead-set connector. FIG. 2D shows an exemplary (female) TRRS connector.The TRRS connector includes four contacts: tip contact 71 a, ring 1contact 71 b, ring 2 contact 71 c, and sleeve contact 71 d, along theside of recesses 69 a, 69 b, 69 c, and 69 d, which contact thecorresponding contacts of the (male) TRRS connector of an audio jackwhen inserted within the recess. Typically the contacts are for leftaudio, right audio, microphone, and ground in the order of tip, ring 1,ring 2, and sleeve. A microphone input signal may be a potentialdifference between the ground contact (sleeve) and the microphonecontact (ring 2) generated by a microphone coupled thereto.

Referring to FIG. 2A, the camera assembly 36 may include a (color) photosensor 42 (i.e., an array of image sensors) positioned parallel to eachof the face surface 72 and the back surface 74 and a lens assembly 40with an optical axis 39 orthogonal to the photo sensor 42 and defining acenter line of a camera field of view 38 extending outward from the backsurface 74 of the mobile device 18. The photo sensor 42 may include oneor more sensors such as charge-coupled display (CCD) sensors,complementary metal-oxide-semiconductor (CMOS) sensors, or the like.

The lens assembly 40 may receive light reflected from objects within thecamera field of view 38. The camera field of view 38 may have an angularsize 41 which may be the angle at which the camera field of view 38spreads with respect to distance from the lens assembly 40. The lensassembly 40 may have a camera aperture size measured as an f-numberwhich is the ratio of the focal length of the lens assembly 40 to thediameter of the entrance pupil (i.e., the lens aperture (an aperturestop or an inherent aperture of the lens component defining theaperture) as viewed through the front of the lens assembly 40).

The camera assembly 36 may further include an auto zoom module 96 and/oran autofocus module 98 which may serve to control an optical zoomsetting and/or autofocus setting of the camera, respectively. Autofocusand auto zoom may be controlled by moving the position of at least oneof the lenses making up the lens assembly 40 with respect to each other(or with respect to the photo sensor 42) and/or altering the curvatureof at least one of the lenses making up the lens assembly 40.

In general, the camera lens assembly 40 and the autofocus module 98(which compensates for limited depth of field at larger apertures) andthe auto zoom module 96 (which adjusts the angular size 41 and imagemagnification) are designed and/or optimized for general-purposephotography, and may therefore not be ideal for barcode capture and/ordecoding. More specifically, in a barcode-reading application anoperator expects to read and decode a barcode in less than 300 ms. Thefocus and zoom adjustment process may require significantly more timeand therefore, if used, it would significantly delay the response timein a barcode-reading application.

If the camera lens assembly 40 is fixed (e.g., not adjusted for focusand zoom) at any particular focus and/or zoom setting for the lensassembly 40, the combination of the angular size 41 and the cameraaperture size affect the camera depth of field (e.g., the range ofdistances at which a barcode of a particular modular size is imaged ontothe photo sensor with sufficient size and sharpness for decoding). Theangular size 41 affects the minimum distance at which a barcode of acertain overall size can be imaged onto the photo sensor 42.

The photo sensor 42 may be coupled to system-on-chip circuits 92 whichinclude an output module 91 and an auto-white balance module 93. In oneembodiment, the output module 91 may control the operation of the photosensor 42 (e.g., exposure, gain, and coupling of pixels toanalog-to-digital (A/D) converters for image read out), format thedigital intensity values of each pixel of the photo sensor 42 for colorimage output, and make the color image output available for writing tothe image data buffer 89.

In another embodiment, the output module 91 may perform image processingon images captured by the photo sensor 42. Control of the photo sensor42 and image pre-processing which may be performed by the system on chipcircuits 92 are described in more detail in U.S. patent application Ser.No. 14/717,112, entitled “BARCODE READER” and filed on May 20, 2015,which is hereby incorporated by reference in its entirety.

The auto-white balance module 93 may perform auto-white balancealgorithms on the captured image to enhance the quality of colorphotographs captured by the photo sensor 42 under different illuminationconditions. The digital image output 162 (which may be the color imageor a result of processing the image one or more times in accordance withthe teachings of U.S. patent application Ser. No. 14/717,112) may bewritten to the image data buffer 89. The mobile device 18 may include adirect memory access (DMA) system 86 which may be a part of theprocessor 44. The DMA 86 provides for direct writing of the digitalimage output 162 from the camera assembly 36 to the image data buffer89.

The camera assembly 36 may further include a white light source 84. Thewhite light source 84 may include one or more LEDs 84 a, 84 b controlledby the system-on-chip circuits 92.

In an exemplary embodiment, a first LED 84 a may be a white LED. Thecolor of a white LED is typically described using a Kelvin temperaturescale with 1500° K representing a warm color “white,” such as that ofcandlelight, and 9500° K representing a cool color “white,” such as thatof a blue sky. The exemplary white LED may be within this range.Alternatively, the exemplary white LED may have a color between 4000° Kand 7000° K.

In the exemplary embodiment the second LED 84 b may be an amber LEDemitting illumination within the 600-615 nm range. Both the first LED 84a and the second LED 84 b may be positioned behind a common optic 85which directs illumination within a field of illumination 83 projectingaway from the back surface 74 and having an illumination axis 88perpendicular to the back surface 74 and an illumination angle 87 whichsubstantially coincides with the field of view 38 of the camera assembly36. In operation, the system-on-chip circuits 92 may control each LED 84a, 84 b independently; and control the intensity of each LED 84 a, 84 bindependently such that the color of the white illumination of thecombined LEDs may be controlled by controlling the intensity of theamber LED with respect to the intensity of the white LED. If theintensity of the amber LED is higher, the white color of the combinationwill be warmer (lower Kelvin temperature). If the intensity of the amberLED is lower, the color approaches the Kelvin temperature of the whiteLED alone.

FIG. 2E shows two exemplary image output formats. The image outputformat from the photo sensor 42 (or from the output module 91 prior toany image processing as described in U.S. patent application Ser. No.14/717,112) may be in either R.G.B. format 164 and/or Y.U.V format 166.The Y.U.V. format 166 may include, for each pixel, a luminous intensity168 indicative of the overall intensity of light incident on the pixelduring the exposure period, a first chromatic 170 representative of afirst dimension of color of the light incident on the pixel during theexposure period, and a second chromatic 172 representative of a seconddimension of color incident on the pixel during the exposure period.

The R.G.B. format 164 may include, for each pixel, a red intensity value174 indicating the intensity of red light incident on the pixel duringthe exposure period, a green intensity value 176 indicating theintensity of green light incident on the pixel during the exposureperiod, and a blue intensity value 178 indicating the intensity of bluelight incident on the pixel during the exposure period.

Returning to FIG. 2A, the mobile device 18 may further include a battery62 and power circuits 63. In general the power circuits 63 controlcharging of the battery 62 from power received from an external powersource via the power connector 64 a and providing operating power at thevoltage and current drawing requirements of the various components ofthe mobile device 18 from the power received from the battery 62 or theexternal power source (when connected to the external power source).

Referring to FIG. 2A in conjunction with FIG. 1, in an exemplaryembodiment, the operating system 48 may include an application retrievalsystem 49 which obtains the barcode-reading application 24 and theapplications 50 a, 50 b from the application server 22 a or 22 b. In oneembodiment, the operation of the application retrieval system 49, whichmay obtain the barcode-reading application 24 and the other applications50 a, 50 b from the application server 22 a or 22 b, may be theexclusive means for loading, writing, or otherwise placing thebarcode-reading application 24 and the other applications 50 a, 50 binto the memory 46. The operating system 48 may be configured to blockor prevent loading of any applications to the memory 46 by any meansother than the operation of the application retrieval system 49 in amanner such that the applications 24, 50 a, 50 b may be retrievedexclusively from the application server 22 a or 22 b.

FIG. 3A is a flow diagram of an exemplary process for the operation ofthe application retrieval system 49. Step 180 represents the applicationretrieval system 49 of the mobile device 18 establishing a secureconnection to the application server 22 a or 22 b over the LAN 12, thewireless ISP network 17 and/or the Internet 16 and authenticating theapplication server 22 a, 22 b (i.e., mutual authentication between themobile device and the application server). The mutual authentication maybe established by using any conventional authentication protocol.

Step 182 represents rendering, on the display screen 66 of the mobiledevice 18, identification of applications which are available to themobile device 18 for downloading. Step 184 represents obtaining userselection of an application to download.

Step 186 represents obtaining an application file package (e.g., aninstall package) from the application server 22 a or 22 b. Theapplication file package may be temporarily stored in the memory 46 ofthe mobile device 18.

Step 188 represents installing the application. The installation processmay include un-packing the install package and writing an executableapplication 50 to the memory 46.

FIG. 3B is a flow diagram depicting an exemplary process for operationof an application server 22 a, 22 b. Step 350 represents the applicationserver 22 a, 22 b establishing a secure connection with the mobiledevice 18 over the LAN 12, the wireless ISP network 17, and/or theInternet 16 and authenticating the mobile device 18 and/or the user ofthe mobile device 18. Authenticating the user of the mobile device 18may include: i) authenticating the individual to which the mobile device18 is assigned or the individual using the mobile device 18, utilizing acombination of a user ID and a password or similar schemes forauthenticating an individual, and/or ii) authenticating an organization,company, or other group of users to which the mobile device 18 isassigned, utilizing a combination of a user ID and a password or othersimilar schemes for identifying whether the mobile device 18 has beenassigned to the organization, company, or group and authenticating theassignment. The user ID may be unique to each mobile device 18 or commonfor all mobile devices 18 assigned to the organization, company, orgroup.

Step 352 represents the application server 22 a, 22 b determining aplurality of one or more applications (the barcode-reading application24, applications 50 a, 50 b, etc.) available for download based on theindividual, organization, company, or other group to which the mobiledevice 18 is assigned.

Turning briefly to FIG. 3C, the application server 22 a, 22 b maycontain, or have access to, a database 360 which identifies generallyavailable applications 362 which are available to any mobile device 18without regard to the identification of the user, organization, company,or group to which the mobile device 18 is assigned; and restrictedapplications 364 which are available only to certain individuals,organizations, companies, and groups. For restricted applications 364,the database 360 may associate each user group 366 a, 366 b withidentification of those restricted applications 368 available to thatuser group 366 a, 366 b. Each user group may be an individual,organization, company, or other group. For example, user group 1 366 amay have access to restricted applications 368 a, 368 b, and 368 c, anduser group 2 366 b may have access to restricted application 368 b. Ineach case these restricted applications may be applications writtencustom for the user group (and therefore are not made available to otheruser groups) or may be licensed to the user group (and therefore madeavailable to those user groups which obtained a license for theapplication).

Returning to FIG. 3B, step 354 represents the application server 22 a,22 b providing an indication of the available applications to the mobiledevice 18. The available applications may include any of the generallyavailable applications 362 and/or the restricted applications 364. Theindication of the available applications may include, for eachapplication, a display screen icon representing the application. Theindication of available applications may not include all availableapplications but may include only those available applications withinparameters established by the user, for example available applicationswhich meet search criteria provided by the user. As such, step 354 mayinclude making a search function available to the mobile device 18,obtaining search criteria or search terms from the user of the mobiledevice 18, and selecting matching applications that meet the searchcriteria from the applications available to the individual,organization, company, or group.

Step 356 represents the application server 22 a, 22 b obtaining a userselection of a desired application. The desired application may be oneof the available applications indicated to the user at step 354.

Step 358 represents the application server 22 a, 22 b providing anapplication file package for the desired application to the mobiledevice 18. The application file package may be provided to theapplication retrieval system 49 of the mobile device 18 which isprovided for writing the file package to a non-volatile memory andunpacking and loading the contents of the file package to generateinstructions which, when loaded to a memory, may be executed by theprocessor 44.

Certain applications such as the barcode-reading application 24 may: i)require a license key from a license server 21 a, 21 b to enableoperation of the application, ii) operate in a base mode of operationwithout a license key but require a license key from a license server 21a, 21 b to enable at least one enhanced function to operate in anenhanced mode of operation, and/or iii) require a license key from alicense server 21 a, 21 b to continue operating, or continue operatingin the enhanced mode of operation, following the passage of time orfollowing a threshold level of usage based on the time and/or thequantity of instances with which certain functions were performed (suchas the quantity of decoding a barcode of a certain symbology orsymbologies).

The at least one enhanced function may be a function of decoding abarcode symbology that the barcode-reading application 24 (e.g., thedecoder) is restricted from decoding in the base mode of operation.Alternatively or additionally, the at least one enhanced function may bea function of decoding multiple barcodes in sequence at a rate that isfaster than a rate at which the barcode-reading application 24 (e.g.,the decoder) can decode multiple barcodes in sequence in the base modeof operation. Alternatively or additionally, the at least one enhancedfunction may be a function of decoding a quantity of barcodes of aparticular symbology that exceeds a restricted threshold quantity ofbarcodes of the particular symbology that the barcode-readingapplication 24 (e.g., the decoder) can decode in the base mode ofoperation.

Alternatively or additionally, the at least one enhanced function mayremove a demonstration restriction function (i.e., a demonstrationfactor that makes output of decoded data useful for demonstrationpurposes only) under which the barcode-reading application 24 functionsin the base mode of operation. The demonstration restriction functionmay be at least one of: i) a function that scrambles decoded data from abarcode of at least one symbology, ii) a function that restricts thedecoded data or scrambled decoded data from a barcode of at least onesymbology from being made available for further processing, or iii) afunction that restricts the decoded data or the scrambled decoded datafrom a barcode of at least one symbology from being displayed on adisplay screen of the mobile device 18.

Alternatively or additionally, the at least one enhanced function mayenable at least one enhanced image processing function that improves anability to decode an image of a barcode and is not operable when thedecoder operates in the base mode of operation. The enhanced imageprocessing function may include preforming additional image processingalgorithms which alter the image captured by the camera assembly 36prior to execution of the algorithms which attempt to decode a barcodedepicted within the image.

In accordance with another embodiment, the base mode of operation mayinclude a base decoding mode of operation and a demonstration mode ofoperation. In the base decoding mode of operation, the barcode-readingapplication 24 may drive the camera assembly 36 to capture an image of abarcode and apply base decoder functions to the image to identify abarcode symbology. The barcode-reading application 24 may decode thebarcode and make decoded data available for further processing if thebarcode symbology is a base symbology, and enter the demonstration modeof operation if the barcode symbology is not the base symbology.

In the demonstration mode of operation, the barcode-reading application24 may apply at least one enhanced barcode-reading function to decodethe barcode, and perform at least one of: i) outputting an indication ofsuccessful decoding of the barcode, or ii) implementing a restrictionfunction. The restriction function may be at least one of: i) a functionthat scrambles decoded data, ii) a function that restricts the decodeddata or scrambled decoded data from being made available for furtherprocessing by at least one application executing on the mobile device,or iii) a function that restricts the decoded data or the scrambleddecoded data from being displayed on a display screen of the mobiledevice 18.

The barcode-reading application 24 may perform an upgrade function inthe demonstration mode of operation. The upgrade function may enableuser selection to obtain the license code, obtain the license code basedon the user selection, establish a network connection to the licensingserver 21 a, 21 b, and obtain the license code from the licensing server21 a, 21 b.

In order to obtain the license code from the licensing server 21 a, 21b, the barcode-reading application 24 may communicate to the licensingserver 21 a, 21 b one of: i) a unique identification code of the mobiledevice 18, or ii) a user identification code identifying a controller ofthe mobile device 18.

In accordance with another embodiment, the barcode-reading application24 (e.g., a decoder application) running on the processor 44 of themobile device 18 may be configured to control the camera assembly 36 ofthe mobile device 18 to capture an image of a barcode. The image of thebarcode may be affected by at least one optic system of the cameraassembly 36. The decoder application may utilize a base decoder functionfor attempting to decode a barcode if an enhanced decoder mode has notbeen authorized for the mobile device 18, and utilize an enhanceddecoder function for attempting to decode the barcode if the enhanceddecoder mode has been authorized for the mobile device 18.

The enhanced decoder function may include a function of decoding abarcode symbology that the decoder application is restricted fromdecoding if the enhanced decoder mode has not been authorized for themobile device 18. Alternatively or additionally, the enhanced decoderfunction may include a function of decoding multiple barcodes insequence at a rate that is faster than a restricted rate at which thedecoder application can decode a sequence of multiple barcodes if theenhanced decoder mode has not been authorized for the mobile device 18.Alternatively or additionally, the enhanced decoder function may includea function of decoding a quantity of barcodes of a particular symbologythat exceeds a restricted quantity of barcodes of the particularsymbology which the decoder application can decode if the enhanceddecoder mode has not been authorized for the mobile device 18.Alternatively or additionally, the enhanced decoder function may removea demonstration restriction function (i.e., a demonstration factor thatmakes output of decoded data useful for demonstration purposes) underwhich the decoder application functions when the enhanced decoder modehas not been authorized for the mobile device 18, thereby making decodeddata from a barcode of a particular symbology available for furtherprocessing by an application executing on the mobile device 18. Thedemonstration restriction function may be at least one of: i) a functionwhich scrambles decoded data from a barcode of at least one particularsymbology, ii) a function which restricts the decoded data or scrambleddecoded data from a barcode of at least one particular symbology frombeing made available for further processing by at least one applicationexecuting on the mobile device 18, or iii) a function which restrictsthe decoded data or the scrambled decoded data from a barcode of atleast one particular symbology from being displayed on a display screenof the mobile device 18. Alternatively or additionally, the enhanceddecoder function may enable at least one enhanced image processingfunction which improves an ability to decode an image of a barcode andis not operable if the enhanced decoder mode has not been authorized forthe mobile device 18. The enhanced decoder mode may be authorized byobtaining a license code from a licensing server 21 a, 21 b.

The decoder application may be configured to subject the license code toa predetermined algorithm to determine at least one operating permissionauthorized by the license code. The enhanced decoder function maycorrespond to the at least one operating permission authorized by thelicense code. The decoder application or any other application may befurther configured to obtain the license code from the licensing server21 a, 21 b by communicating to the licensing server one of: i) a uniqueidentification code of the mobile device 18, or ii) a useridentification code identifying a controller of the mobile device 18.

The barcode-reading application 24 (and the decoder application)disclosed above may be embodied on a computer-readable medium. Thebarcode-reading application 24 (and the decoder application) includesinstructions executable by the processor 44 of the mobile device 18 forperforming the functions disclosed above.

FIG. 20A is a state machine diagram depicting two states of operation ina barcode-reading application 24 in accordance with one embodiment. Thefirst state of operation may be a disabled state 474 (which may also bereferred to as a base state). In the disabled state 474, at least onefunction of the barcode-reading application 24 is disabled such that thebarcode-reading application 24 may not output useful decoded data forfurther processing or transmission by the barcode-reading application 24but may be capable of connecting to a licensing server 21 a, 21 b toobtain a license to transition the barcode-reading application 24 to alicensed operation state 476 (which may also be referred to as anenhanced operation state). The at least one function that may bedisabled includes: i) an image capture function which, if enabled, wouldenable capturing an image of a barcode for image processing anddecoding, ii) a decoding function which, if an image of a barcode iscaptured, would decode the image of the barcode to generate decodeddata, iii) a data processing function which, if decoded data isgenerated, would process the decoded data as part of a useful workflow,and/or iv) a data transmission function which, if decoded data isgenerated and/or processed by the barcode-reading application 24, wouldmake the decoded data available to another local application (e.g.,another application on the mobile device 18) or a remote application(e.g., another application or database on any of the host computer 19, alocal server coupled to the LAN 12, or a remote server coupled to theInternet 16.

The licensed operation state 476 may enable the function(s) that is/aredisabled when the barcode-reading application 24 is in the disabledstate 474 such that the barcode-reading application 24 may be capable ofcapturing an image of a barcode for image processing and decoding,decoding the image of the barcode to generate decoded data, andperforming, as applicable: i) a data processing function which, ifdecoded data is generated, would process the decoded data as part of auseful workflow, and ii) a data transmission function which, if decodeddata is generated and/or processed by the barcode-reading application24, would make the decoded data available to another local application(e.g., another application on the mobile device 18) or a remoteapplication (e.g., another application or database on any of the hostcomputer 19, a local server coupled to the LAN 12, or a remote servercoupled to the Internet 16.

There may be two sub-embodiments of the licensed operation state 476. Ina first sub-embodiment, all of the functions of the barcode-readingapplication 24 may be enabled. In a second sub-embodiment, all functionsof the barcode-reading application 24 may be enabled except restrictionson the output of useful decoded data may be implemented. Therestrictions may be specified in the license key which transitions thebarcode-reading application 24 from the disabled state 474 to thelicensed operation state 476. The restrictions may be symbologyrestrictions, time restrictions, and/or quantity restrictions.

FIG. 21 shows examples of a data structure of a license key inaccordance with some embodiments. A first example license key 702 mayinclude data fields (that may be encrypted) which specify thesymbologies 708 (for example, symbologies A, B, and C that correspond toa Universal Product Code (UPC), a Quick Response (QR) Code, and aPortable Data File (PDF)-417) and a lease term 710. The lease term 710may specify a date and time at which the license key 702 expires. Inresponse to receipt of this license key 702 (and decryption of thelicense key 702 if encrypted) the barcode-reading application 24 maytransition to the licensed operation state 476, decode the specifiedsymbologies 708 when in the licensed operation state 476 (whileremaining disabled for decoding other symbologies not specified in thelicense, for example for a data matrix), and at the end of the leaseterm 710, transition back to the disabled state 474 (unless a newlicense key with an updated lease term 710 is received prior toexpiration, which functions to extend the expiration of the lease term).

A second example license key 704 may include data fields (that may beencrypted) which specify the symbologies 712 a-c (for example,symbologies A, B, and C that correspond to a UPC, a QR Code, and aPDF-417), and a licensed quantity of decodes 714 a-c for each symbology712 a-c. The licensed quantity of decodes for a particular symbology,for example the licensed quantity 714 a for symbology 712 a, may beunlimited. The licensed quantity of decodes 714 b-c for symbologies 712b-c may be limited to a specified quantity. The entire license key 704may further include a lease term 716 which may specify a date and timeat which the license key 704 expires. In response to receipt of thislicense key 704 (and decryption of the license key 704 if encrypted) thebarcode-reading application 24 may transition to the licensed operationstate 476, and decode the specified symbologies 712 a-c when in thelicensed operation state 476 up to the licensed quantities 714 a-c. Thebarcode-reading application 24 may remain disabled for decoding othersymbologies not specified in the license (e.g., symbologies other than712 a-c), automatically disable each of symbologies 712 b-c when thetotal quantity of decodes of each symbology 712 b-c exceeds the licensedquantity 714 b-c (unless a new license key increases the quantity), andtransition back to the disabled state 474 (unless a new license key withan updated lease term 710 is received prior to expiration, whichfunctions to extend the expiration of the lease term). In thisarrangement, the ability to decode symbologies 712 b-c will expire uponthe earlier of: i) reaching the maximum quantity of decodes 714 b-c, orii) expiration of the lease term 716.

A third example license key 706 may include data fields (that may beencrypted) which specify the symbologies 718 a-c (for example,symbologies A, B, and C that correspond to a UPC, a QR Code, and aPDF-417), a license term 720 a-c for each symbology 718 a-c, and alicensed quantity 722 a-c for each symbology 718 a-c. The license term720 a-c may specify a date and time at which the license for thatparticular symbology 718 a-c expires. The license term may be perpetual(e.g., license term 720 a-b) or time limited (e.g., license term 720 c).The licensed quantity of decodes for a particular symbology may beunlimited (e.g., the licensed quantity 722 a for symbology 718 a), ormay specify a specific quantity (e.g., the licensed quantity 722 b-c forsymbologies 718 b-c).

In response to receipt of this license key 706 (and decryption of thelicense key 706 if encrypted) the barcode-reading application 24 maytransition to the licensed operation state 476, and decode the specifiedsymbologies 718 a-c when in the licensed operation state 476 up to thelicensed quantities 722 a-c for each symbology and for the duration ofthe license term 720 a-c for each symbology. The barcode-readingapplication 24 may remain disabled for decoding other symbologies notspecified in the license (e.g., symbologies other than 718 a-c), andautomatically disable each of symbologies 718 b-c when the earlier of:i) the expiration of the license term 720 a-c for each symbology 718 a-cexpires, or ii) the total quantity of decodes of each symbology 718 b-cexceeds the licensed quantity 722 b-c, each being subject to extensionby a new license key with an increased term duration or an increasedquantity.

Each of the license keys may be a data file, specifying the symbologies,the license terms, and the license quantities as depicted in FIG. 21.The data file may be encrypted utilizing an encryption key (e.g., aprivate key of a public/private key pair). The encrypted data file mayform the license key and may be decrypted by the barcode-readingapplication 24 utilizing an encryption key (e.g., a public key of thepublic/private key pair). Other known encryption technologies may alsobe utilized for securing the delivery of the license key to thebarcode-reading application including the license restrictions (e.g.,licensed symbologies, license terms, and licensed quantities) within thelicense key.

FIG. 20B is a state machine diagram depicting three states of operationin a barcode-reading application 24 in accordance with anotherembodiment. The first state of operation may be a base state 470. Whenin the base state, the barcode-reading application 24 may includebarcode-reading capabilities which, although functional and capable ofgenerating useful decoded data, are limited by at least one factor orfunction (which will be referred to as a demonstration factor) whichmakes output of decoded data useful for demonstration purposes but notpractical for ongoing operation.

The operation of the barcode-reading application 24 in the base statemay be a base decoding mode of operation or a demonstration mode ofoperation. In the base decoding mode of operation, the barcode-readingapplication 24 may drive the camera of the mobile device 18 to capturean image of a barcode, and apply base decoder functions to the image toidentify the barcode symbology. If the barcode symbology is a basesymbology, the barcode-reading application 24 may decode the barcode andmake the decoded data available for further processing. If the symbologyis other than a base symbology, the barcode-reading application 24 mayenter the demonstration mode of operation.

In the demonstration mode of operation, the barcode-reading application24 may apply at least one unlicensed enhanced barcode-reading functionto decode the barcode, and perform at least one of: i) outputting anindication of successfully decoding the barcode, or ii) implementing arestriction function. The restriction function may be at least one of:i) a function which scrambles decoded data; ii) a function whichrestricts the decoded data or scrambled decoded data from the barcodefrom being made available for further processing by at least oneapplication executing on the mobile device; or iii) a function whichrestricts the decoded data or the scrambled decoded data from thebarcode from being displayed on a display screen of the mobile device.

The at least one demonstration factor may include, but is not limitedto: i) a scrambling function which, upon generating decoded data,provides the output in a scrambled or truncated format for purposes ofdemonstrating decoding capabilities (and decoder performance) butpreventing use of the decoded data for further data processing, ii) atime delay function which, upon generating and outputting decoded data(or scrambled decoded data), provides for implementing a time delaybefore a barcode of the same symbology can again be successfullydecoded, iii) an output restriction function which restricts decodeddata (or scrambled decoded data) from being made available for furtherprocessing by at least one application executing on the mobile device18, and iv) an output restriction function which enables outputtingdecoded data (or scrambled decoded data) to the display screen andprevents the decoded data from being further processed by the mobiledevice 18 (other than presentation on the display screen) ortransmission to a remote application.

The demonstration mode of operation may include an upgrade function. Theupgrade function may enable user selection to obtain the license codeand upon user selection to obtain the license code, establish thenetwork connection to the licensing server and obtain the license codefrom the licensing server 21 a, 21 b.

The at least one demonstration factor may be applied to selectedsymbologies or all symbologies. Different demonstration factors may beapplied to different symbologies.

The barcode-reading application 24 may transition from the base state470 to a license key retrieval state 471. Reading a barcode to which ademonstration factor applies may trigger transition of thebarcode-reading application 24 to the license key retrieval state 471.Alternatively, the barcode-reading application 24 may transition to thelicense key retrieval state 471 upon user selection of the license keyretrieval state 471.

When in the license key retrieval state 471 the barcode-readingapplication 24 may connect to a licensing server 21 a, 21 b to obtain alicense key. After obtaining the license key, the barcode-readingapplication 24 may transition to a licensed operation state 472 (i.e.,an enhanced operation state).

The licensed operation state 472 may enable the barcode-readingapplication 24 to function without limitations of the at least onedemonstration factor such that the barcode-reading application 24 may becapable of capturing an image of a barcode for image processing anddecoding, decoding the image of the barcode to generate decoded data,and performing, as applicable: i) a data processing function which, ifdecoded data is generated, would process the decoded data as part of auseful workflow, and ii) a data transmission function which, if decodeddata is generated and/or processed by the barcode-reading application24, would make the decoded data available to another local application(e.g., another application on the mobile device 18) or a remoteapplication (e.g., another application or database on any of the hostcomputer 19, a local server coupled to the LAN 12, or a remote servercoupled to the Internet 16), in each case without being impeded by thedemonstration factor.

As described with respect to the licensed operation state 476 in FIG.20A, there may be two sub-embodiments of the licensed operation state472. In a first sub-embodiment, all of the functions of thebarcode-reading application 24 may be enabled. In a secondsub-embodiment, all functions of the barcode-reading application 24 maybe enabled except restrictions on the output of useful decoded data maybe implemented. The restrictions may be specified in the license keywhich transitions the barcode-reading application 24 to the licensedoperation state 472. The restrictions may be symbology restrictions,time restrictions, and/or quantity restrictions.

FIG. 22A depicts an exemplary operation of a license server 21 a, 21 b.Step 370 represents receiving a license key request from thebarcode-reading application 24 (or other application) of the mobiledevice 18. Receiving the license key request may include authenticatingthe user of the mobile device 18. Authenticating the user of the mobiledevice 18 may include: i) authenticating the individual to which themobile device is assigned or the individual using the mobile device (orthe individual who controls the mobile device), for example utilizing acombination of a user ID and a password or similar schemes forauthenticating an individual, and/or ii) authenticating an organization,company, or other group of users to which the mobile device is assigned,for example utilizing a combination of a user ID and a password or othersimilar schemes for identifying whether the device has been assigned tothe organization, company, or group and authenticating the assignment.The user ID may be unique to the device or common for all mobile devices18 assigned to the organization, company, or group.

Step 372 represents the license server 21 a, 21 b checking whether apre-paid license is available for the mobile device 18. Morespecifically, the identity of the individual, organization, company, orother group of users identified during the authentication may be used tolook up (e.g., in a license database) licenses available to thatindividual, organization, company, or other group of users (if any). Fora particular individual, organization, company, or other group of users,a certain quantity of licenses may have been pre-purchased.

FIG. 22C depicts an exemplary database 739 for recording pre-paidlicenses that may have been purchased by an individual, organization,company or other group of users. Each such individual, organization,company or other group of users may be identified by a group ID 740,750. Associated with each group ID is one or more license IDs 742, 752a, 752 b, each of which identifies a license type for thebarcode-reading application 24 which may have been purchased inquantities of one or more. Each license type may be, as an example, oneof the license types identified by the license keys 702, 704, 706 ofFIG. 21.

Each license ID 742, 752 a, 752 b may be associated with identificationof: i) the quantity of the license type purchased 744, 754 a, 754 b, ii)the quantity used 746 or the quantity in use 756 a, 756 b, and/or iii)the quantity remaining 748, 758 a, 758 b for issuance to mobile devices18. It should be appreciated that recording both the quantity used 746or the quantity in use 756 a, 756 b as well as the quantity remaining748, 758 a, 758 b for issuance to mobile devices is duplicative aseither value can be calculated from the quantity purchased 744, 754 a,754 b and the other value.

Recording the quantity used 746 is useful when licenses are purchasedfor a single mobile device, and once a license is issued to a particularmobile device it is permanently associated with that mobile device andmay not be re-assigned to another mobile device without manualintervention.

Recording the quantity in use 756 a, 756 b is useful when the licensesare concurrent-use licenses, and when a license assigned to a mobiledevice expires it is considered no longer in-use and can be reassignedto another mobile device 18.

It should also be appreciated that if the quantity of licenses purchasedis unlimited 754 a, it is irrelevant to track in-use licenses 756 a, 756b and remaining licenses 758 a, 758 b. When utilizing the concurrent-uselicenses, for the in-use licenses 756 b, the database may include anin-use table 760 which records, for each license 762, the time 764 atwhich it expires (e.g., the lease term 710 from FIG. 21) such that uponexpiration (if the expiration is not updated by way of renewal), thelicense will revert to remaining inventory 758 b and can be issued to adifferent mobile device 18.

It should be appreciated that this licensing scheme enables a mobiledevice 18 to obtain a license for a specific term, and so long as themobile device 18 obtains a renewal license prior to expiration, thebarcode-reading application 24 can operate under the license even if themobile device is (periodically) uncoupled from any network and unable tocontact the license server 21 a, 21 b.

Returning to FIG. 22A, step 374 represents determining whether apre-paid license is available. If a prepaid license is available at step374, a license key for the pre-paid license is generated at step 376 andthe database 739 is updated at step 378. Updating the database mayinclude recording the license as used 746 or in use 756 b.

If it is determined at step 374 that a pre-paid license is notavailable, payment is obtained for a license at step 380. Step 380 mayinvolve determining the type of license being requested (e.g., asidentified by license keys 702, 704, 706), including the licensedsymbology(ies) as well as license term(s) and license quantity(ies) foreach symbology(ies). In one embodiment, the barcode-reading application24 may, under the control of the license server 21 a, 21 b, generate amenu for user selection of these license parameters (i.e., symbologies,license terms and license quantities) and display on a screen of themobile device 18 pricing alternatives for desired license parameters.

After payment is obtained, a license key for the license is generated atstep 382 and the database 739 is updated at step 384 to reflect a newlypurchased license for a user (group ID). If the newly purchased licenseis a concurrent-use license, updating the database may include recordingthe license as well as its expiration.

As stated, this licensing scheme enables a mobile device 18 to obtain alicense for a specific term, and so long as the mobile device 18 obtainsa renewal license prior to expiration, the barcode-reading application24 can continue operation under the license even if the mobile device 18is uncoupled from any network and unable to contact the license server21 a, 21 b.

FIG. 22B depicts an exemplary operation of a license server 21 a, 21 bfor renewing a license for a mobile device 18 prior to the expiration ofthe license (e.g., prior to the in-use license 756 b reverting to aremaining license 758 b).

Step 770 represents receiving a license key renewal request from thebarcode-reading application 24 (or other application) of the mobiledevice 18. Receiving the license key renewal request may includeauthenticating the user of the mobile device 18. Authenticating the userof the mobile device 18, as discussed, may include: i) authenticatingthe individual to which the mobile device is assigned, or the individualusing the mobile device (or the individual who controls the mobiledevice), for example utilizing a combination of a user ID and apassword, or similar schemes for authenticating an individual, and/orii) authenticating an organization, company, or other group of users towhich the mobile device is assigned, for example utilizing a combinationof a user ID and a password or other similar schemes for identifyingwhether the device has been assigned to the organization, company, orgroup and authenticating the assignment. The user ID may be unique tothe device or common for all mobile devices 18 assigned to theindividual, organization, company, or group. The mobile device 18 (e.g.,the barcode-reading application) may communicate to the licensing serveri) a unique identification code of the mobile device 18 or ii) a useridentification code identifying a controller of the mobile device 18.

Step 772 represents the license server 21 a, 21 b matching the user orthe mobile device 18 to the existing in-use license, which may berecorded in an in-use table (for example, the in-use table 760 shown inFIG. 22C).

Step 774 represents generating, and providing to the mobile device 18,an update license key which, as depicted by license key 702 of FIG. 21,may include an updated license term.

Step 776 represents updating the license database such that theexpiration date of the license in the in-use table 760 is updated.

Embodiments for a barcode-reading enhancement accessory are disclosedhereafter. As used herein, the terms “attachment” and “accessory” areused synonymously and interchangeably, and may refer to an apparatusattached, coupled, or secured to a mobile device. An attachment for amobile device may include just a single component that improves thebarcode-reading capabilities of the mobile device. Alternatively, anattachment may include multiple components that improve thebarcode-reading capabilities of the mobile device. In addition, anattachment for a mobile device may provide additional functionality thatis unrelated to improving the barcode-reading capabilities of the mobiledevice. In some embodiments, the attachment improves the ability of themobile device to read a barcode utilizing the camera assembly and/or theflash/torch illumination system of the mobile device. In someembodiments, the attachment may include a supplemental camera systemand/or one or more supplemental illumination systems which providebarcode-reading capability for the mobile device.

In accordance with some embodiments, a barcode-reading system for amobile device may include a barcode-reading enhancement accessorysecured to the mobile device, which will be explained in detailhereafter, and a barcode-reading application stored in a memory of themobile device 18, which is disclosed above. The barcode-readingenhancement accessory may include at least one optic system that ispositioned either within a field of illumination of a light source ofthe mobile device for modifying the field of illumination projected bythe light source or within a field of view of a camera of the mobiledevice for modifying illumination reflected from objects within thefield of view of the camera.

As disclosed above, the barcode-reading application 24 may be configuredto operate in a base mode or an enhanced mode. In the base mode ofoperation, the barcode-reading application 24 may be configured tocontrol a network interface of the mobile device 18 to establish anetwork connection to a licensing server 21 a, 21 b and obtain a licensecode from the licensing server 21 a, 21 b ; subject the license code toa predetermined algorithm and determine at least one operatingpermission authorized by the license code; and enable an enhanced modeof operation. In the enhanced mode of operation, the barcode-readingapplication 24 may be configured to implement at least one enhancedbarcode-reading function which corresponds to the at least one operatingpermission authorized by the license code.

The at least one enhanced barcode-reading function may include afunction of decoding a barcode symbology that the decoder is restrictedfrom decoding in the base mode of operation. Alternatively oradditionally, the at least one enhanced barcode-reading function mayinclude a function of decoding multiple barcodes in sequence at a ratethat is faster than a rate at which the barcode-reading application candecode multiple barcodes in sequence in the base mode of operation.Alternatively or additionally, the at least one enhanced barcode-readingfunction may include a function of decoding a quantity of barcodes of aparticular symbology that exceeds a restricted quantity of barcodes ofthe particular symbology that the barcode-reading application can decodein the base mode of operation.

Alternatively or additionally, the at least one enhanced barcode-readingfunction may remove a demonstration restriction function under which thebarcode-reading application 24 functions in the base mode of operation.The demonstration restriction function may be at least one of: i) afunction that scrambles decoded data from a barcode of at least onesymbology, ii) a function that restricts the decoded data or scrambleddecoded data from a barcode of at least one symbology from being madeavailable for further processing, or iii) a function that restricts thedecoded data or the scrambled decoded data from a barcode of at leastone symbology from being displayed on a display screen of the mobiledevice 18.

Alternatively or additionally, the at least one enhanced barcode-readingfunction may enable at least one enhanced image processing function thatimproves an ability to decode an image of a barcode and is not operablewhen the decoder operates in the base mode of operation.

The base mode of operation may include a base decoding mode of operationand a demonstration mode of operation. In the base decoding mode ofoperation, the barcode-reading application may be configured to drivethe camera assembly to capture an image of a barcode, and apply basedecoder functions to the image to identify a barcode symbology. Thebarcode-reading application 24 may decode the barcode and make decodeddata available for further processing if the barcode symbology is a basesymbology, and enter the demonstration mode of operation if the barcodesymbology is not the base symbology. In the demonstration mode ofoperation, the barcode-reading application 24 may be configured to:apply at least one enhanced barcode-reading function to decode thebarcode, and perform at least one of outputting an indication ofsuccessful decoding of the barcode or implementing a restrictionfunction. The restriction function may be at least one of: i) a functionthat scrambles decoded data, ii) a function that restricts the decodeddata or scrambled decoded data from being made available for furtherprocessing by at least one application executing on the mobile device18, or iii) a function that restricts the decoded data or the scrambleddecoded data from being displayed on a display screen of the mobiledevice 18.

The barcode-reading application 24 may be configured to perform anupgrade function in the demonstration mode of operation. The upgradefunction may enable a user selection to obtain the license code, obtainthe license code based on the user selection, establish a networkconnection to the licensing server 21 a, 21 b, and obtain the licensecode from the licensing server 21 a, 21 b.

In order to obtain the license code from the licensing server 21 a, 21b, the barcode-reading application 24 may be configured to communicateto the licensing server 21 a, 21 b one of: i) a unique identificationcode of the mobile device 18, or ii) a user identification codeidentifying a controller of the mobile device 18.

In accordance with another embodiment, a barcode-reading system for amobile device may include a barcode-reading enhancement accessorysecured to the mobile device 18 and a barcode-reading application 24stored in a memory of the mobile device 18 and executable by a processor44 of the mobile device 18. The barcode-reading enhancement accessorymay include at least one optic system that is positioned either within afield of illumination of a white light source of the mobile device 18for modifying the field of illumination projected by the white lightsource, or within a field of view of a camera of the mobile device 18for modifying illumination reflected from objects within the field ofview of the camera.

The barcode-reading application 24 may include: i) an image capturefunction for controlling the white light source and the camera tocapture an image of a barcode wherein the image of the barcode may beaffected by the at least one optic system, ii) a base decoder functionfor decoding a barcode in a base mode of operation if an enhanceddecoder mode has not been authorized, and iii) an enhanced decoderfunction for decoding a barcode in an enhanced mode of operation if theenhanced decoder mode has been authorized.

The enhanced decoder function may include a function of decoding abarcode that the barcode-reading application 24 is restricted fromdecoding in the base mode of operation. Alternatively or additionally,the enhanced decoder function may include a function of decodingmultiple barcodes in sequence at a rate that is faster than a restrictedrate at which the barcode-reading application 24 can decode a sequenceof multiple barcodes when in the base mode of operation. Alternativelyor additionally, the enhanced decoder function may include a function ofdecoding a quantity of barcodes of a particular symbology that exceeds arestricted quantity of barcodes of the particular symbology which thebarcode-reading application 24 can decode when in the base mode ofoperation.

Alternatively or additionally, the enhanced decoder function may removea demonstration restriction function under which the barcode-readingapplication 24 functions when in the base mode of operation, therebymaking decoded data from a barcode of a particular symbology availablefor further processing by an application executing on the mobile device18. The demonstration restriction function may be at least one of: i) afunction which scrambles decoded data from a barcode of at least oneparticular symbology, ii) a function which restricts the decoded data orscrambled decoded data from a barcode of at least one particularsymbology from being made available for further processing by at leastone application executing on the mobile device, or iii) a function whichrestricts the decoded data or the scrambled decoded data from a barcodeof at least one particular symbology from being displayed on a displayscreen of the mobile device 18.

Alternatively or additionally, the enhanced decoder function may enableat least one enhanced image processing function which improves anability to decode an image of a barcode and is not operable when thebarcode-reading application 24 operates in the base mode of operation.The enhanced decoder mode is enabled by obtaining a license code from alicensing server 21 a, 21 b.

The barcode-reading application 24 may be configured to subject thelicense code to a predetermined algorithm to determine at least oneoperating permission authorized by the license code. The enhanceddecoder function may correspond to the at least one operating permissionauthorized by the license code.

The barcode-reading application 24 may be configured to obtain thelicense code from the licensing server 21 a, 21 b by communicating tothe licensing server one of: i) a unique identification code of themobile device 18, or ii) a user identification code identifying acontroller of the mobile device 18.

An attachment for a mobile device 18 may cover a relatively smallportion of the mobile device. Alternatively, an attachment for a mobiledevice may be a protective case that covers a substantial portion of themobile device. Attachments may be designed for attachment to mobiledevices in a wide variety of ways, including but not limited to acorner-positioned attachment, an encapsulating attachment, and amounting attachment. These attachment modes will be explained in detailbelow.

FIGS. 4A and 4B depict examples of a corner-positioned attachment thatcovers a relatively small portion of the mobile device 18. Acorner-positioned attachment may cover one or more (but not all) cornersof a mobile device.

The corner-positioned attachment 100 a shown in FIG. 4A secures to, andcovers, a single corner of a mobile device 18. More specifically, thecorner-positioned attachment 100 a may have an interior back surface102, an interior front surface 104, an interior top surface 106, and aninterior side surface 108. When installed on the corner of the mobiledevice 18: i) the interior back surface 102 faces, and abuts, the backsurface 74 of the mobile device 18; ii) the interior front surface 104faces, and abuts, the face surface 72 of the mobile device 18; iii) theinterior top surface 106 faces, and abuts, the top edge 78 of the mobiledevice 18; and iv) the interior side surface 108 faces, and abuts, theright edge 80 of the mobile device 18. The distance between the interiorback surface 102 and the interior front surface 104 may be sufficientlylarge to permit the corner-positioned attachment 100 a to be insertedonto the corner of the mobile device 18 without excessive difficulty,but also small enough that, once installed, the corner-positionedattachment 100 a will not slide free of the mobile device 18 due tofriction fit between: i) the interior back surface 102 and the backsurface 74; and ii) the interior front surface 104 and the face surface72. Because the corner-positioned attachment 100 a covers a singlecorner of the mobile device 18, the attachment 100 a may be installed onthe mobile device 18 by sliding the attachment 100 a along the top edge78 (e.g. the interior top surface 106 in contact with the top edge 78)until the interior side surface 108 abuts the right edge 80 of themobile device. FIG. 4A shows, as an example, a corner-positionedattachment covering the right top corner of the mobile device 18.However, the corner-positioned attachment may cover the left top corneror any other corner of the mobile device 18.

The corner-positioned attachment 100 b secures to, and covers, two topcorners of the mobile device 18 as well as the entire top edge 78. Morespecifically, the corner-positioned attachment 100 b may have aninterior back surface 102, an interior front surface 104, an interiortop surface 106, and two interior side surfaces 108 a and 108 b. Wheninstalled on the corner of the mobile device 18: i) the interior backsurface 102 faces, and abuts, the back surface 74 of the mobile device18; ii) the interior front surface 104 faces, and abuts, the facesurface 72 of the mobile device 18; iii) the interior top surface 106faces, and abuts, the top edge 78 of the mobile device 18; and iv) theinterior side surfaces 108 a and 108 b face, and abut, the right edge 80and the left edge 82 of the mobile device 18, respectively.

The distance between the interior back surface 102 and the interiorfront surface 104 may be sufficiently large to permit thecorner-positioned attachment 100 a to be inserted onto the corner of themobile device 18 without excessive difficulty, but also small enoughthat, once installed, the corner-positioned attachment 100 b will notslide free of the mobile device 18 due to friction fit between: i) theinterior back surface 102 and the back surface 74, and ii) the interiorfront surface 104 and the face surface 72.

Additionally, or alternatively, the distance between the interior sidesurface 108 a and the interior side surface 108 b may be sufficientlylarge to permit the corner-positioned attachment 100 b to be insertedonto the corner of the mobile device 18 without excessive difficulty,but also small enough that, once installed, the corner-positionedattachment 100 b will not slide free of the mobile device 18 due tofriction fit between: i) the interior side surface 108 a and the rightedge 80, and ii) the interior side surface 108 b and the left edge 82.

Because the corner-positioned attachment 100 b covers two corners of themobile device 18, the attachment 100 b may be installed on the mobiledevice 18 by sliding the attachment 100 b along each of the left edge 82and the right edge 80 (e.g. the interior side surface 108 a in contactwith the right edge 80, the interior side surface 108 b in contact withthe left edge 82, the interior back surface 102 in contact with the backsurface 74, and the interior front surface 104 in contact with the facesurface 72) until the interior top surface 106 abuts the top edge 78 ofthe mobile device 18.

With respect to either attachment 100 a or 100 b (or any type ofcorner-positioned attachment), as an alternative to frictionalengagement between the attachment 100 a, 100 b and the mobile device 18,the attachment 100 a, 100 b may be secured to the mobile device 18through the use of various other attachment methods. Such attachmentmethods include, but are not limited to, mechanical fasteners,adhesives, and the like.

Encapsulating attachments may cover substantially the entirety of theback surface 74 of the mobile device 18 and may further coversubstantially the entirety of one or more of the edges 76, 78, 80, and82 of the mobile device 18. An encapsulating attachment i) may cover aperimeter edge of the face surface 72 (but does not cover the centralportion of the face surface 72) or ii) may cover substantially theentire face surface 72 but include a transparent central portion, ineach case to enable viewing of, and access to, the display screen 66 andtouch panel of the mobile device 18. An encapsulating attachment mayfurther exclude covering interface elements of the mobile device 18,such as buttons, electrical interfaces, infrared interfaces, and thelike.

FIG. 5A depicts an exemplary encapsulating attachment 110 a which coverssubstantially the entire back surface 74 and each of the right edge 80and the left edge 82 of the mobile device 18 while covering portions ofthe top edge 78 and the bottom edge 76 near the right edge 80 and leftedge 82 (e.g. the corners of the mobile device 18).

In more detail, the encapsulating attachment 110 a may include: i) aninterior back surface 112 which faces, and abuts, the back surface 74 ofthe mobile device 18; ii) interior side surfaces 114 a and 114 b whichface, and abut, the right edge 80 and the left edge 82 of the mobiledevice 18, respectively; iii) an interior top surface 118 which faces,and abuts, the top edge 78 of the mobile device 18 (at the corners); andiv) an interior bottom surface 120 which faces, and abuts, the bottomedge 76 of the mobile device 18 (at the corners). The encapsulatingattachment 110 a may also include an interior side surface 116 whichfaces, and abuts, at least a portion of the periphery of the facesurface 72 of the mobile device 18.

For installation of the encapsulating attachment 110 a onto the mobiledevice 18, the walls of the encapsulating attachment 110 a forming theinterior side surfaces 114 a and 114 b may be sufficiently flexible suchthat, with pressure, the walls separate as the mobile device 18 ispressed towards the interior back surface 112, and the portions of thewalls which form the interior side surface 116 pass along the right edge80 and the left edge 82 of the mobile device 18, and come to restabutting the periphery of the face surface 72 when the back surface 74is in contact with the interior back surface 112.

The encapsulating attachment 110 a, or more specifically a back sideforming the interior back surface 112, may further include a cameraaperture through which the camera assembly (not shown) of the mobiledevice 18 has the camera field of view 38 to the back surface 74 of themobile device 18.

FIG. 5B depicts another example of an encapsulating attachment 100 b.The encapsulating attachment 100 b comprises a top corner-positionedattachment 101 a (similar to 100 b) which covers the top two corners ofthe mobile device 18 and a bottom corner-positioned attachment 101 bwhich covers the bottom two corners of mobile device 18. The twocorner-positioned attachments 101 a and 101 b, when installed, mate toencapsulate the mobile device 18. It should be appreciated that theinterior front surface of each of the attachments 110 b (e.g. each ofthe mating top and bottom corner-positioned attachments) covers a smallportion of the periphery of the face surface 72 of the mobile device 18such that an operator may access the display screen 66 and the touchpanel when the mobile device 18 is encapsulated within the attachment110 b.

It should be appreciated that the encapsulating attachments 110 a and110 b shown in FIGS. 5A and 5B are examples of encapsulatingattachments, and the encapsulating attachments may be in any form ortype.

Mounted attachments generally are attachments that are secured to oneface and/or one edge of a mobile device 18. Mounted attachments may notcover any corner of the mobile device, and may not encapsulate themobile device 18.

FIGS. 6A and 6B depict exemplary mounted attachments 122 a, 122 b whichare secured to the back surface 74 of the mobile device 18. In FIG. 6A,the mounted attachment 122 a may be a barrel shape and include acylindrical male engagement surface 124 which inserts into a cylindricalrecess 126 within the back surface 74 of the mobile device 18 andengages a periphery engagement surface 128 of the cylindrical recess 126for mounting. The engagement between the engagement surface 124 and theengagement surface 128 may be, for example, by threading, bayonetfitting, or any other mounting structure which may utilize rotationalmovement between the mounted attachment 122 a and the mobile device 18for securing the mounted attachment 122 a to, and releasing the mountedattachment 122 a from, the mobile device 18.

In FIG. 6B the mounted attachment 122 b may be a non-cylindrical shapeand may be secured into a recess 130 within the back surface 74 of themobile device 18. The recess 130 may be of the same shape as the mountedattachment 122 b and may include an engagement lip or cavity 132 aroundat least a portion of the periphery of the recess 130 such thatengagement clips 134 around the periphery of the mounted attachment 122b may secure the mounted attachment 122 b within the recess 130.

In addition to the foregoing examples of corner-mounted attachments,encapsulating attachments, and mounted attachments, the barcode-readingenhancement systems and other features embodied in, or related to,attachments as described herein may utilize any (or multiple) attachmentstructure or means for attaching to the corresponding mobile deviceincluding, but not limited to: i) for attachments that cover someportion of the mobile device from two or more sides (e.g.corner-positioned attachments and encapsulating attachments), use of africtional interface such as a modest interference fit between theinterior dimension of the attachment and the exterior dimension of theportion of the mobile device that receives the attachment; ii) forencapsulating attachments, a wide variety of attachment features inknown examples of cases, covers, and other protectors for mobiledevices; and iii) for attachments that are attached to only one side ofthe mobile device attachment, features such as threaded fasteners,adhesives, snap-in interfaces, and the like.

The attachments described herein may include target-generatingmechanisms as a component of the barcode-reading enhancement system fora mobile device. FIG. 7A depicts a side cutaway view of an examplecorner- or edge-mounted attachment (shown as attachment 100 a covering asingle edge of the mobile device 18 as an example) that includes atarget-generating structure 136 (i.e., a target-generating mechanism).The target-generating structure 136 projects a targeting beam 138 into atarget area 140 (corresponding to a central portion of a field of view38 of the camera assembly 36 of the mobile device 18) and may beutilized to facilitate rapid and optimal positioning of a barcode 142within the camera field of view 38 of the mobile device 18. Thetargeting beam 138 is projected at an acute angle 144 with respect tothe back surface 74 of the mobile device 18 in a first direction suchthat the targeting beam 138 intersects the central portion of the camerafield of view 38 at a distance from the camera assembly 36 that isuseful for barcode reading. The distance useful for barcode readingmeans that a barcode 142 within the camera field of view 38 would beimaged by the lens assembly 40 with sufficient sharpness (focus) andresolution (size) to enable reading of the barcode 142. This targetingbeam 138 is especially useful when the mobile device 18 does not have adisplay, or the display is dimmed or turned off to conserve batterypower.

FIG. 7B shows (as a top view, which may be orthogonal to the side viewdepicted in FIG. 7A) an example of a target-generating mechanism. Thetarget-generating mechanism may include multiple target-generatingstructures 136 a and 136 b. The target-generating structures 136 a and136 b may project non-parallel targeting beams 138 a and 138 b of adistinct illumination pattern, each at an acute angle with respect tothe back surface 74 of the mobile device 18 in a second directionorthogonal to the first direction and each of which form a point or apattern within the target area 140. The target-generating structures 136a and 136 b may be configured so that (1) at a distance useful forbarcode reading (i.e. the optimal distance from the camera assembly 36),the targeting beams 138 a and 138 b converge so that the projectedpatterns and/or points meet at the center of the camera field of view38, and (2) at any distance from the camera assembly 36 other than theoptimal distance, the projected patterns and/or points are spaced apart.Thus, when the mobile device 18 is being used to read a barcode 142, theuser may move the mobile device 18 until the projected patterns and/orpoints meet, indicating that the mobile device 18 is at the optimaldistance from the barcode 142 and that the barcode 142 is positionedwithin the center of the camera field of view 38.

The target-generating mechanism depicted in FIG. 7B may include a lightsource 146 a, 146 b and permutations of any of a prism 148 a, 148 b; acollimating lens 150 a, 150 b ; and a pattern-generating surface 152 a,152 b such as an interference pattern-generating element; a diffractivepattern-generating element, such as a holographic element that mayinclude one or more diffractive gratings; or a Fresnel-typepattern-generating element that has been fabricated with the desiredtargeting beam pattern.

The light source 146 a, 146 b may be laser diodes, light-emitting diodes(LEDs), etc. embodied in the attachment or within the mobile device 18.The targeting beams 138 a, 138 b may be generated by shaping theillumination from the white light source of the mobile device by theapplicable permutations of the prism 148 a, 148 b, a collimating lens150 a, 150 b, and a pattern-generating surface 152 a, 152 b.

Although FIGS. 7A and 7B depict the target-generating mechanism embodiedin a corner- or edge-mounted attachment 100 a, the target-generatingmechanism may be secured to the mobile device 18 by other meansincluding, but not limited to, embodying the target-generating structure136 into an encapsulating attachment as depicted in FIG. 5A in alignmentwith a white light source 84 of the mobile device such that the whitelight source 84 of the mobile device may be used as the light source 146of the target-generating structure 136.

In this application, a “distinct illumination pattern” is anillumination pattern produced by light that is focused to providerelatively crisp lines or other shapes. Thus, the illumination producedby a laser is an example of light that would typically produce adistinct illumination pattern. By contrast, a “diffuse illuminationpattern” is an illumination pattern produced by light that is notfocused at any particular location, but rather emanating into a broadarea. Thus, the illumination produced by a typical light bulb is anexample of light that would typically produce a diffuse illuminationpattern.

FIGS. 8A-8D illustrate various targeting patterns (distinct illuminationpatterns) that may be projected by the target-generating structures 136into the target area 140. FIG. 8A shows an example of a targetingpattern 224 that may be projected by the target-generating structure136. The targeting pattern 224 includes a circle 226 with a dot 228 inthe center. One target-generating structure (136 a for example) maygenerate the circle 226, while the other target-generating structure(136 b for example) may generate the dot 228. The target-generatingstructures 136 a, 136 b may be configured so that when the mobile device18 is at an optimal distance from the barcode 142, the dot 228 issubstantially in the center of the circle 226 to form the depictedtargeting pattern 224.

FIG. 8B shows another example of a targeting pattern 290 that may beprojected by the target-generating structures 136. The targeting pattern290 includes a cross comprising a horizontal bar 292 and a vertical bar294. One target-generating structure (136 a for example) may generatethe horizontal bar 292, while the other target-generating structure (136b for example) may generate the vertical bar 294. The target-generatingstructures 136 a, 136 b may be configured so that when the mobile device18 is at an optimal distance from the barcode 142, the horizontal bar292 and the vertical bar 294 intersect each other within the target area140 to form the depicted targeting pattern 290.

FIG. 8C shows another example of a targeting pattern 296 that may beprojected by the target-generating structures 136. The targeting pattern296 includes a circle 298 comprising an X pattern 300 within the circle298. One target-generating structure (136 a for example) may generatethe circle 298, while the other target-generating structure (136 b forexample) may generate the X pattern 300. The target-generatingstructures 136 a, 136 b may be configured so that when the mobile device18 is at an optimal distance from the barcode 142, the circle 298 andthe X pattern 300 may intersect each other to form the depictedtargeting pattern 296.

FIG. 8D shows another example of a targeting pattern 302 generated bythe target-generating structures 136. The targeting pattern 302 mayinclude an intense illumination in a pattern of one or morequadrilaterals such as a rectangular or square quadrilateral 304 whichis/are bounded by a distinct drop in intensity (e.g. a sharp contrast atthe edges of the rectangular or square quadrilateral 304). Morespecifically, the area around the perimeter of the illuminatedrectangular or square quadrilateral 304 may be illuminated (if at all)at an intensity much less than the intensity of illumination within therectangular or square quadrilateral 304.

The illuminated rectangular or square quadrilateral 304 may be, forexample, illuminated by LEDs projecting (or appearing) blue or white andin the shape of the rectangular or square quadrilateral 304. The lengthof the rectangular or square quadrilateral 304 in a first direction(direction 308) may approximately coincide with the width of the fieldof view of the camera assembly 36 of the mobile device 18 (or the widthof the system field of view if the attachment alters the field of viewof the camera assembly 36); and the length of the rectangular or squarequadrilateral 304 in a second direction (direction 306), orthogonal tothe first direction 308, may approximately coincide with the height ofthe field of view of the camera assembly 36 of the mobile device 18 (orthe height of the system field of view if the attachment alters thefield of view of the camera assembly 36); and, in each case, may bewithin a central portion of the field of view of the camera assembly 36of the mobile device 18 as depicted in FIG. 5A.

Stated another way, the angle at which the illumination diverges fromthe target-generating structure 136 in the first direction 308 may beapproximately the same angle as the field of view of the camera assembly36 in the first direction 308 (or the same angle as the system field ofview if the attachment alters the field of view of the camera assembly36). Similarly, the angle at which the illumination diverges from thetarget-generating structure 136 in the second direction 306 may beapproximately the same angle as the field of view of the camera assembly36 in the second direction 306 (or the same angle as the system field ofview if the attachment alters the field of view of the camera assembly36). As such, the targeting pattern 302 not only provides the user withan indication of the field of view of the camera assembly 36 (or thesystem field of view), in both the first direction 308 and the seconddirection 306, but the targeting pattern 302 also illuminatessubstantially all of the field of view in one or both of the firstdirection and the second direction with an intensity of illuminationthat does not significantly vary within the targeting pattern 302 butdrops significantly at the perimeter of the targeting pattern 302.

As discussed, the target-generating structure 136 may include its ownlight source 146 a, 146 b (as shown in FIG. 7B) and collimateillumination therefrom to produce the applicable distinct targetingpattern. The illumination source may be of a particular wavelength (e.g.red or blue light) or may be white illumination (broad spectrum) and mayinclude a filter 214 a, 214 b (which will be explained in detail withreference to FIG. 9) to pass only the particular wavelength used togenerate the distinct targeting pattern by attenuating otherwavelengths.

Alternatively, the target-generating structure 136 may collimate andotherwise shape illumination from the white light source 84 of themobile device 18 utilizing a collimating lens and/or apattern-generating surface in both the first direction and the seconddirection to project the applicable targeting pattern into the targetarea 140. In such a case, as shown in FIG. 9, the target-generatingstructure 136 may include filters (214 a, 214 b) which pass a narrowband of the visible illumination spectrum, such as red illumination orblue illumination, such that the white illumination (broad spectrum)from the mobile device 18 is filtered and the targeting patterngenerated by the combination of the white illumination source and thefilter is a specific color, such as blue or red.

The attachments described herein may include supplementary exposureillumination systems as a component of the barcode-reading enhancementsystem for a mobile device. More specifically, the supplementaryexposure illumination systems may include one or more elements whichproject (or alter the projection of) diffuse illumination into thetarget area 140 in such a manner that illumination reflected from abarcode 142 and imaged onto the photo sensor 42 produces imagecharacteristics that improve the decode-ability of the image. Imagecharacteristics which improve the decode-ability of the image include:i) increased contrast between illumination reflected from bars (e.g.,first modules in a 2D code) versus illumination reflected from spaces(e.g., second modules in a 2D code), and ii) even contrast (e.g., no hotspots, dead zones, or other significant contrast difference) ofillumination reflected from bars (or first modules) across the entirebarcode 142 and similarly even contrast of illumination reflected fromspaces (or second modules) across the entire barcode 142.

FIG. 9 depicts an example of a mobile device attachment 110 (shown as across section of an encapsulating attachment) that includes illuminationelements for optimizing illumination for barcode reading. The mobiledevice 18 includes a white light source 84. The attachment 110 mayinclude a light pipe 210 that redirects white illumination 212 providedby the white light source 84 of the mobile device 18. More specifically,utilizing total internal reflection, the light pipe 210 propagates thewhite illumination 212 in a direction parallel to the back surface 74 ofthe mobile device 18 towards one or more illumination emanatingstructures 218 a, 218 b which are displaced from the white light source84 within the plane defined by the back surface 74 of the mobile device18.

Each illumination emanating structure 218 a, 218 b redirects at least aportion of the white illumination 212 propagating through the light pipe210 towards a barcode 142 present within the target area 140 as exposureillumination 216 a, 216 b. Each emanating structure 218 a, 218 b mayinclude any permutation of the prism 148 a, 148 b (not shown in FIG. 9but discussed with respect to FIG. 7B), collimating lens 150 a, 150 b(not shown in FIG. 9 but discussed with respect to FIG. 7B),pattern-generating surface 152 a, 152 b (not shown in FIG. 9 butdiscussed with respect to FIG. 7B), and one or more filters 214 a, 214b. The one or more filter(s) 214 a, 214 b may include: i) a narrow bandfilter (e.g. a single-color filter passing a single color ofillumination such as red, blue, or another color); ii) a low pass filterpassing all color bands below a predetermined wavelength; and/or iii) ahigh pass filter passing all color bands above a predeterminedwavelength. When the one or more filters 214 a, 214 b are a narrow bandfilter (e.g. a single color filter), the exposure illumination 216 a,216 b may be a single color (e.g., red, blue, or another single color).The redirection of illumination by the illumination emanating structures218 a, 218 b may occur by reflection from a chamfered end of the lightpipe 210 positioned directly below the illumination emanating structures218 a, 218 b.

In some embodiments, the light pipe 210 and the illumination emanatingstructures 218 a, 218 b may be configured (positioned) such that theexposure illumination 216 a, 216 b is offset from the camera's photosensor 42 (in the plane defined by the back surface 74 of the mobiledevice 18) in order to prevent glare. In other words, the exposureillumination 216 a, 216 b may be directed toward the target area 140from locations that are not directly in front of the camera's photosensor 42.

FIG. 9 depicts just one example of a supplementary exposure illuminationsystem as a component of the barcode-reading enhancement system for amobile device. Other supplementary exposure illumination systems mayinclude any of the optic elements (including illumination-generatingLEDs) which form a direct bright field illumination system, a diffusebright field illumination system, and a dark field illumination systemas described in U.S. patent application Ser. No. 14/510,341, entitled“DIFFUSE BRIGHT FIELD ILLUMINATION SYSTEM FOR A BARCODE READER,” filedon Oct. 9, 2014, and commonly assigned with the present application. Thecontent of the Ser. No. 14/510,341 application is hereby incorporated byreference in its entirety. It should further be appreciated that thesupplementary exposure illumination systems utilizing the optic elementsof the direct bright field illumination system, the diffuse bright fieldillumination system, and the dark field illumination system from theSer. No. 14/510,341 application may further utilize the correspondingillumination sources in conjunction with such optics.

The attachments described herein may include a supplementary opticsystem as a component of the barcode-reading enhancement system for amobile device. An “optic system” may be any set of one or morecomponents positioned in the field of view 38 of a camera assembly 36 tomodify one or more parameters regarding the light received by thecamera, such as the quantity of the light received, the optical pathwayalong which the light is received, the angular size of the field ofview, the depth of field, the focus distance, the f-number, and/or thewavelength(s) of the light received. Thus, an optic system, in variouscomponents, may include any of various components such as lenses,filters, mirrors, apertures, and the like. Stated another way, the oneor more optical elements within the field of view 38 of the cameraassembly 36, in combination with the lens assembly 40 of the camera,define a barcode-reading optic system (the combination) which providessuperior barcode-reading capabilities over the lens assembly 40 alone.

FIGS. 10A and 10B depict examples of a mobile device attachment 110(shown as a mounted attachment) that includes a supplementary lenssystem that includes permutations of: i) one or more lens(es) 200; ii)optical filter(s) 204; and iii) an aperture 202.

The aperture 202 limits the amount of light that reaches the camera'sphoto sensor 42 through the camera's lens assembly 40. Morespecifically, the aperture 202 may be an aperture within an opaquebarrier material which defines the aperture (f-number) of thesupplementary lens system and, when part of the barcode-reading opticsystem, may define the optical aperture (f-number) of thebarcode-reading optical system.

The aperture of the barcode-reading optical system, as defined by theaperture 202, may provide for an increased depth of field (e.g. a systemdepth of field) over the depth of field provided by the lens assembly40. With increased depth of field, an image on the photo sensor 42sufficiently sharp (focused) for barcode reading may be achieved withoutthe need for autofocusing and therefore the decode response time may beimproved because the barcode-reading process does not require atime-consuming autofocusing step.

The one or more lens(es) 200 may alter the field of view 38 of thecamera assembly 36 and/or magnification of the camera assembly 36 (e.g.provide a system field of view 207 that is different from the field ofview 38 of the camera assembly 36).

The one or more filter(s) 204 may include: i) a narrow band filter (e.g.a single-color filter passing a single color of illumination such asred, blue, or another color); ii) a low pass filter passing all colorbands below a predetermined wavelength; and/or iii) a high pass filterpassing all color bands above a predetermined wavelength.

For example, it may be desirable to capture predominantly light of arelatively narrow segment of the visible portion of the electromagneticspectrum, such as red light with a wavelength of approximately 660 nm.The filter 204 may thus have a colored tint and/or polarization with anarrow wavelength band desired for image capture for effective barcodedecoding.

As mentioned previously, the parameters of the camera assembly 36, suchas the angular size of the camera field of view 38, the range of focusdepths, and the depth of field of the camera assembly 36 may not beideal for barcode capture and/or decoding. Thus, any or all of theseparameters may be modified by the optic system of the attachment. Thus,the system field of view 207 may have an angular size that issignificantly smaller than the angular size of the camera field of view38. This may be because conventional photography often uses a wider lensangle than is needed for capturing barcode images.

The system field of view 207 may provide a system ratio of focal lengthto entrance pupil diameter that is greater than a camera ratio of focallength to entrance pupil diameter of the unmodified optic system of thecamera assembly 36 such that the optic system of the attachment acts toincrease the f-stop of the camera lens assembly 40.

Further, the mobile device 18 and the optic system of the attachment100, combined, may have a depth of field (not shown), consisting of thedepth along the system optical pathway 205 (e.g., as shown in FIG. 13)through which an object may remain in focus (to a degree acceptable forbarcode capture and/or decoding) on either side of the system focusdepth. A relatively large depth of field may advantageously permitbarcode capture and/or decoding at a wider range of distances betweenthe mobile device 18 and the barcode to be captured. Thus, theattachment lens may advantageously provide a relatively larger depth offield, particularly at shorter focus depths, than the camera assembly36, unaided.

The system field of view 207 may be centered on a system opticalpathway, which may be the same as the optical pathway 205 for the cameraassembly 36 without the attachment. More specifically, the cameraassembly 36 may be designed to capture images centered on an opticalpathway 205 perpendicular to the back surface 74 of the mobile device18. In certain embodiments this optical pathway is not modified by theattachment; thus, the system optical pathway 205 may be the same as theoptical pathway for the camera assembly 36. In other embodiments, anattachment may provide a different optical pathway for barcode scanning,as will be shown and described with respect to FIGS. 10C and 10D.

FIG. 10C depicts an example of a mobile device attachment 110 (shown asa mounted attachment) that includes a mirror 220 that changes theoptical path of illumination (i.e. reflected light) 222 reflected fromthe barcode to the mobile device 18 from a direction that is generallyparallel to the face surface 72 and the back surface 74 of the mobiledevice 18 to a direction that is generally orthogonal to the lensassembly 40 and the photo sensor 42 of the camera assembly 36 of themobile device 18.

The attachment 110 permits a user of the mobile device 18 to attempt toread a barcode 142 positioned within a field of view that is beyond thetop edge 78 of the mobile device by aiming the top side (the top edge78) of the mobile device 18 at the barcode 142. The reflected light 222reflected from the barcode 142 is redirected by the mirror 220 towardthe mobile device's focusing lens assembly 40, which focuses thereflected light 222 onto the photo sensor 42.

Stated another way, the field of view 38 of the camera assembly 36 wouldhave a center line that is generally orthogonal to the planar backsurface 74 of the mobile device 18 (and orthogonal to the planar displayon the face surface 72 of the mobile device 18) and that extends towardsa target area 140 from the back surface 74 of the mobile device 18. Themirror 220 is within such a field of view and folds the field of viewsuch that its center line is parallel to the back surface 74 of themobile device 18 (and the display on the face surface 72 of the mobiledevice 18) and extends towards a target area 140 from the top side ofthe mobile device 18.

In the depicted example, the mirror 220 is positioned so that thereflected light 222 is redirected by 90°. Alternatively, the mirror 220may be positioned so that the reflected light 222 is redirected by adifferent angle. For example, FIG. 10D depicts a mirror 220 positionedso that the reflected light is redirected by an angle 221 between 30 and60 degrees from perpendicular to the back surface 74.

It should be appreciated that, although not depicted in either FIG. 10Cor 10D, the attachment 110, in addition to including the mirror 220 toredirect the reflected light 222, may further include any permutation ofoptic components discussed with respect to FIGS. 10A and 10B forpurposes of altering one or more of the depth of field, the f-number,the angle of the field of view, or the focal plane of the lens assembly40 of the camera assembly 36. Such optic components may be locatedwithin the region 224 a of the attachment 110 or the region 224 b of theattachment 110.

FIGS. 11A, 11B, 12A, 12B, 12C, 12D, 13, 14, and 15 depict additionalexamples of attachments which may be, or form, a part of thebarcode-reading enhancement system for a mobile device. Although eachattachment depicted in FIGS. 11A, 11B, 12A, 12B, 12C, 12D, 13, 14, and15 is depicted in one of the general structures described with respectto FIGS. 4A, 4B, 5A, 5B, 6A, or 6B, the arrangement of target-generatingmechanisms, supplementary illumination systems, and supplementary opticsystems described above with respect to FIGS. 7A, 7B, 8A-8D, 9, and10A-10D may be utilized in any of the general structures.

FIG. 11A depicts an attachment 20 (shown in partial view) with atarget-generating structure 136 which projects a targeting beam 138 fromthe top edge 78 of the mobile device 18 to the top side of the mobiledevice 18 to form a targeting pattern 160 within a target area 140whereas the attachments depicted in FIGS. 7A and 7B include atarget-generating structure 136 which projects a targeting beam 138 fromthe back surface 74 of the mobile device 18 and generates the targetingpattern 160 within a target area 140.

The attachment 20 may further include a structure 230 (with a mirror220) as depicted in, and described with respect to, FIGS. 10C or 10D forredirecting illumination reflected from a barcode in the target areaextending from the top edge 78 of the mobile device 18 towards the lensassembly 40 of the camera assembly 36 on the back surface 74 of themobile device 18. More specifically, the mirror 220 may be a firstmirror within a first chamber 232 within the field of view 38 of thecamera assembly 36 (not shown) on the back surface 74 of the mobiledevice 18. The first mirror 220 may be positioned at approximately a45-degree angle to the center line of the field of view 38 of the cameraassembly 36 to fold the field of view of the camera by approximately 90degrees such that the field of view 38 of the camera assembly 36 extendstowards the target area 140 extending from the top edge 78 (the topside) of the mobile device 18 instead of from the back surface 74 of themobile device 18 as described with respect to FIG. 10A. Alternatively,the first mirror 220 may be positioned at an angle between 30 degreesand 60 degrees from the plane of the back surface 74 of the mobiledevice.

Further as described with respect to FIGS. 10A and 10B (and although notdepicted in FIG. 11A), any permutation of the optics described withrespect to FIGS. 10A and 10B may be positioned within the first chamber232 for purposes of altering one or more of the depth of field, thef-number, the angle of the field of view, or the focal plane of the lensassembly 40 of the camera assembly 36.

The target-generating mechanism may include a second mirror 234, withina second chamber 236, generally parallel to the first mirror 220, butaligned with the white light source 84 on the back surface 74 of themobile device 18, and may fold the illumination from the white lightsource 84 (by the same angle at which the first mirror 220 folds thefield of view of the camera assembly 36) towards the target area 140extending from the top edge 78 of the mobile device 18. The firstchamber 232 may be separated from the second chamber 236 by an opaquewall or baffle to prevent illumination within the second chamber beingincident on the first mirror 220 and reflected by the first mirror 220onto the lens assembly 40 of the camera assembly 36 and therebydegrading the image quality of an image of a barcode 142 within thetarget area 140.

The target-generating mechanism may further include any of thetarget-generating structures 136 described with respect to FIGS. 7A and7B for forming and projecting the targeting beams 138 of a distinctillumination pattern into the target area 140. In FIG. 11A, thetarget-generating structure 136 is depicted as two collimating lensstructures arranged horizontally (within a line generally parallel tothe lines formed by the interface of the top edge 78 with each of theface surface 72 and the back surface 74 of the mobile device). Each ofthe collimating lens structures may project a targeting pattern 160 intothe target area 140 which is similar to the targeting pattern 400depicted in FIG. 7D. Again, the targeting pattern 400 may be projectedinto the center of the field of view and the angular size of thetargeting pattern with respect to distance from the mobile device 18 maybe the same as the angle of the field of view and therefore may serve asboth the distinct illumination pattern indicating the field of view andthe diffuse illumination (within the field of view) for exposureillumination.

FIG. 11B depicts an attachment (depicted as a corner- or edge-mountedattachment 100) which is similar in structure to the encapsulatingattachment 110 of FIG. 11A but with target-generating structures 136arranged vertically (within a line generally perpendicular to the linesformed by the interface of the top edge 78 with each of the face surface72 and the back surface 74 of the mobile device). The attachment 100 ofFIG. 11B may further include an exposure illumination structure 238which may utilize any of the elements described with respect to FIG. 9or any of the supplementary exposure illumination systems which form thedirect bright field illumination system, the diffuse bright fieldillumination system, and/or the dark field illumination system asdescribed in U.S. patent application Ser. No. 14/510,341.

As stated with respect to FIG. 11A, the target-generating structure 136may utilize the second mirror 234 to redirect illumination generated bythe white light source 84 into the target-generating structure 136 toform targeting beams 138 or may utilize illumination sources within theattachment 110. With respect to the embodiment of FIG. 11B, one of thetargeting illumination sources or the exposure illumination source maybe the white light source 84 of the mobile device 18 (reflecting from amirror) and the other of these may be an illumination source within theattachment.

FIGS. 12A, 12B, 12C and 12D represent an attachment 110 (shown as anencapsulating attachment) with a target-generating structure 136 thatmay be repositioned and used for any embodiment described herein wherethe white light source 84 of the mobile device 18 provides illuminationfor the target-generating structure 136 (which as discussed with respectto FIG. 7D may also be the exposure illumination system). Therepositionable target-generating structure 136 is useful for uses of themobile device 18 where, in addition to utilizing the white light source84 and the camera assembly 36 for barcode reading, the white lightsource 84 and the camera assembly 36 are used for traditionalphotography.

FIGS. 12A and 12B depict the target-generating structure 136 as beingpivotally repositionable between: i) a first position 440 as depicted inFIG. 12A wherein the target-generating structure 136 is positioned infront of the white light source 84 (i.e. an illuminating torch) suchthat illumination from the white light source 84 is shaped by thetarget-generating structure 136 into a distinct targeting illuminationpattern; and ii) a second position 442 as depicted in FIG. 12B whereinthe target-generating structure 136 is positioned outside of theillumination field of the white light source 84 such that theillumination from the white light source 84 is unmodified by thetarget-generating structure 136 and can be used for illumination whenusing the camera assembly 36 of the mobile device 18 to takephotographic pictures.

As depicted in FIGS. 12A and 12B, the target-generating structure 136may be secured to the attachment 110 by a flexible band 444 such thatthe target-generating structure 136 may be pivoted in the direction 446between position 440 and position 442 by flexure of the flexible band.It is also envisioned that a more traditional hinge/hinge pin structuremay also provide for pivoting the target-generating structure 136between position 440 and position 442 in alternative embodiments.

FIGS. 12C and 12D depict the target-generating structure 136 beinglaterally repositionable between: i) a first position 448 as depicted inFIG. 12C wherein the target-generating structure 136 is positioned infront of the white light source 84 (i.e. an illuminating torch) suchthat the illumination from the white light source 84 is shaped by thetarget-generating structure 136 into a targeting pattern; and ii) asecond position 450 as depicted in FIG. 12D wherein thetarget-generating structure 136 is positioned outside of theillumination field of the white light source 84 such that theillumination from the white light source 84 is unmodified by thetarget-generating structure 136 and can be used for illumination whenusing the camera assembly 36 of the mobile device 18 to takephotographic pictures. As depicted in FIGS. 12C and 12D, thetarget-generating structure 136 may be secured to the attachment 110within a channel 452 such that the target-generating structure 136 maybe laterally repositioned in the direction 454 between position 448 andposition 450.

FIG. 13 depicts another exemplary attachment (shown as an encapsulatingattachment 100) for a mobile device 18. The attachment 100 may have ahousing 460 defining an interior cavity 462 of the attachment 100 whichis separate from a cavity in which the attachment 100 encapsulates themobile device 18.

The cavity 462 within the housing 460 may be divided into one or morechambers separated by an opaque barrier in order to restrict lightpassage from components in one chamber to components in another. Forexample, the cavity 462 may have a first chamber 264 and a secondchamber 266. An opaque barrier 268 may separate the first chamber 264from the second chamber 266 in a manner that prevents light from eitherof the first chamber 264 and the second chamber 266 from passingdirectly into the other chamber.

The first chamber 264 may be larger than the second chamber 266, and maycontain components such as a supplementary optic system 271, attachmentcontrol circuitry 270, and an attachment battery 272.

The supplementary optic system 271 may be any of the embodimentsdescribed with respect to FIGS. 10A and 10B. A window 278 within thehousing 460 may be in alignment with the supplementary optic system 271so that illumination reflected from the target area 140 is able to enterthe first chamber 264 via the window 278 to reach the supplementaryoptic system 271 and, after passing through the supplementary opticsystem 271, be received and captured by the camera assembly 36 of themobile device 18.

In some embodiments, the window 278 may be transparent and function toenclose the first chamber 264. In other embodiments, the window 278itself may be a component of the supplementary optic system 271 formodifying one or more of the depth of field, the f-number, the angle ofthe field of view, or the focal plane of the lens assembly 40 of thecamera assembly 36.

For example, the window 278 may filter illumination reflected from thetarget area 140 (e.g. pass and/or attenuate certain wavelengths ofillumination). The filter characteristics may include any of the filtercharacteristics described with respect to the filter 214 a, 214 b ofFIG. 9.

The second chamber 266 may include one or more of a targetingillumination system 280 and an exposure illumination system 282. Thetargeting illumination system 280 may utilize an illumination source 284and any of the targeting structures 136 described with respect to FIGS.7A or 7B to project a targeting beam (not shown) with a distinctillumination pattern (which may be any of the targeting patternsdescribed with respect to FIGS. 8A, 8B, 8C and 8D) towards the targetarea 140.

The exposure illuminating system 282 may utilize an exposureillumination source 286 and the exposure illumination structuredescribed with respect to FIG. 9 or U.S. patent application Ser. No.14/510,341. The exposure illumination source 286 may include variouslight sources, including but not limited to lasers, LED's, incandescentlights, fluorescent lights, and the like.

The attachment control circuitry 270 of this embodiment may control eachof the targeting illumination systems 280 and the exposure illuminationsystem 282. The targeting illumination system 280 may be configured toproject light into the target area 140 prior to and/or after imagecapture so as to avoid interfering with the decode-ability of thebarcode image. Conversely, the exposure illumination system 282 mayproject illumination into the target area 140 during image capture.

The targeting illumination system 280 and the exposure illuminationsystem 282 may also be connected to an attachment battery 272, eitherindependently of the attachment control circuitry 270, or via theattachment control circuitry 270. Thus, the targeting illuminationsystem 280 and the exposure illumination system 282 may be controlled bythe attachment control circuitry 270 and powered by the attachmentbattery 272.

The attachment control circuitry 270 may further include, or beelectrically connected to, an attachment communications interface, whichmay be coupled to the mobile device power/data connector 64 via a link276 a and/or the speaker/microphone connector 34 via a link 276 b.

The housing 460 may further contain a user control 288, which may beactuated by the user to perform various functions, such as initiatingthe capture of a barcode. The user control 288 may include any form ofuser input known in the art, including but not limited to switches,levers, knobs, touch screens, microphones coupled to voice-operationsoftware, and the like. The user control 288 may advantageously take theform of a trigger that can be actuated, for example, with the indexfinger of the user. In alternative embodiments, the housing 460 may bemodified to have a pistol grip or other grip that enhances theergonomics of the housing 460 and/or facilitates actuation of the usercontrol similar to the housing depicted in FIG. 14.

FIG. 14 depicts another exemplary attachment (shown as an encapsulatingattachment 100 as an example) for a mobile device 18. The attachment 100may have a handle 158 which extends downward away from the back surface74 of the mobile device 18 and is sized and shaped to be gripped by anoperator with the operator's thumb and forefinger being positioned at ashoulder 159 where the handle 158 meets a portion of the attachment 100which is adjacent to the back surface 74 of the mobile device 18. Whenheld in this manner the face surface 72 of the mobile device is visibleto an operator looking downward.

A trigger switch 157 is positioned at the shoulder 159 and is intendedto enable the operator to trigger reading of a barcode utilizing thesame ergonomics of a typical “gun” type of barcode reader. The triggerswitch 157 activates a trigger circuit 161.

The attachment 100 includes a microphone connector 155 (shown as aspeaker/microphone male connector coupled within the speaker/microphoneconnector 34 of the mobile device 18).

The trigger circuit 161 includes an oscillator circuit configured tocreate a potential difference between the ground contact and themicrophone contact of the speaker/microphone connector 155 that isdetectable by the mobile device 18. The potential difference may begenerated by physical movement of a magnet with respect to a coil withsuch physical movement being generated by pulling the trigger switch157. A combination of springs and spring-activated switches mayaccentuate the movement of the magnet with respect to the coil and/orbreak the circuit to ensure that activation of the trigger switch 157 isdetectable by the mobile device 18.

The attachment 100 may also include a structure described with respectto FIG. 10C or 10D for purposes of folding the optical path forillumination reflected from the target area 140 so that the field ofview of the camera assembly 36 (e.g. the system field of view) is foldedfrom the back surface 74 of the mobile device towards the target area140 positioned at the top side of the mobile device 18. The attachment100 also includes a battery 163 for supplying power to the components inthe attachment 100.

FIG. 15 illustrates a mobile device 18 with an attachment 20 which mayinclude supplementary optic system 271 for image capture and atarget-generating structure 136 which utilizes the white light source 84of the mobile device 18 to generate an intense targeting illuminationpattern into the target area.

More particularly, the target-generating structure 136 may comprise acollimating lens 150 which is positioned within, and modifies, the fieldof illumination 151 of the white light source 84 into the shape of anintense targeting illumination pattern, which may be a pattern depictedin any of FIGS. 8A, 8B, 8C or 8D. The target-generating structure 136may include a filter 214 which may be a band pass filter or a low passfilter as described with respect to FIG. 19C for passing a certain colorof illumination while attenuating wavelengths other than the certaincolor.

In a case where the intense targeting illumination pattern is asdepicted in FIG. 8D with diffuse illumination across the field of view,the system illumination field 156 (e.g., illumination as modified by thetarget-generating structure 136) may substantially overlap with thesystem field of view 207. Thus, with the aid of the target-generatingstructure 136 the system field of view 207 may be effectivelyilluminated with diffuse illumination and the borders of the diffuseillumination (as depicted in FIG. 8D) may enable the user to properlyposition the mobile device 18 with respect to a barcode in the targetarea 140.

In the event the targeting pattern does not provide diffuse illuminationacross the system field of view 207, the supplementary optic system 271may include a high pass filter described with respect to FIG. 19C suchthat the illumination of the targeting pattern (as filtered) isattenuated by the high pass filter and does not affect the intensity ofthe illumination incident on the photo sensor 42.

FIG. 23 is an exploded view of an exemplary barcode-reading enhancementaccessory 2300 configured as an encapsulating attachment. Thebarcode-reading enhancement accessory 2300 may comprise an outer case2312 and one or more inner carriages 2314 a, 2314 b. FIG. 23 depicts twoinner carriages 2314 a, 2314 b as an example. However, the accessory2300 may include just one inner carriage or more than two innercarriages. The accessory 2300 may further include an impact-absorbingcover 2336 positioned over, or molded over, at least a portion of theouter case 2312 to protect a mobile device 18 encased therein.

The outer case 2312 may comprise a cavity 2317 into which each one ofthe inner carriages 2314 a, 2314 b may be inserted. One inner carriage2314 a, 2314 b may be accommodated in the outer case 2312 at one time.The cavity 2317 may be defined by the interior surfaces of the outercase 2312. More specifically, the cavity 2317 may be defined by a backside interior surface 2320, a face interior surface 2322 which isgenerally parallel to the back side interior surface 2320, a top edgeinterior surface 2340, a bottom edge interior surface (not shown in FIG.23), which is opposite, and parallel, to the top edge interior surface2340, a left edge interior surface 2326, and a right edge interiorsurface 2324, which is opposite, and parallel, to the left edge interiorsurface 2326. Each of the top edge interior surface 2340, the bottomedge interior surface, the left edge interior surface 2326, and theright edge interior surface 2324 may be generally planar and extendbetween the back side interior surface 2320 and the face interiorsurface 2322, and define a perimeter of each of the back side interiorsurface 2320 and the face interior surface 2322. The top edge interiorsurface 2340 and the bottom edge interior surface may each be orthogonalto each of the left edge interior surface 2326 and the right edgeinterior surface 2324. The face interior surface 2322 may include anaperture through which a display screen 43 of a mobile device 18 may beviewed and as such the face interior surface 2322 may be a thin bandwhich extends around the periphery defined by the top edge interiorsurface 2340, the bottom edge interior surface, the left edge interiorsurface 2326, and the right edge interior surface 2324.

The outer case 2312 may be open to enable the inner carriage 2314 a,2314 b to be inserted into, and removed from, the outer case 2312. Forexample, as shown in FIG. 23, the outer case 2312 may comprise twomating parts 2312 a, 2312 b, which can be secured to each other to formthe outer case 2312. The two mating parts 2312 a, 2312 b may be securedto each other, for example, by sliding one mating part 2312 b in amating direction 2338 towards the other mating part 2312 a until the twomating parts 2312 a, 2312 b are secured by a latching (fastening orclamping) mechanism. The latching mechanism may be provided on the sidewalls or a back side surface of the outer case 2312. Any conventionallatching, fastening, or clamping mechanism may be employed to secure thetwo mating parts 2312 a, 2312 b. Similarly the outer case 2312 may beopened by releasing the latching mechanism and sliding the two matingparts 2312 a, 2312 b apart.

Alternatively, the two mating parts may be connected together by a hingeat one corner of the outer case 2312 and may be secured at the othercorner by a latching mechanism, similar to the embodiment shown in FIGS.30 and 31, or may be connected by screws or pins, similar to theembodiment shown in FIG. 32. Alternatively, the outer case 2312 may be aone-piece component and the combination of the inner carriage 2314 a,2314 b and the mobile device 18 may be simply pushed into the cavity ofthe outer case 2312.

Each inner carriage 2314 a, 2314 b may include a cavity 2346 toaccommodate a mobile device 18 therein. FIG. 23 shows the inner carriage2314 b with a mobile device 18 accommodated therein. Each inner carriage2314 a, 2314 b may accommodate a particular size or model of a mobiledevice 18 for which each inner carriage 2314 a, 2314 b is designed.

The cavity 2346 of the inner carriage 2314 a, 2314 b may be defined bythe interior surfaces of the inner carriage 2314 a, 2314 b. For example,the cavity 2346 of the inner carriage 2314 a, 2314 b may be defined by aback side interior surface 2350, a face interior surface 2352 (ifpresent), which is generally parallel to the back side interior surface2350, and i) a left edge interior surface 2354 and a right edge interiorsurface 2356, which is opposite, and parallel, to the left edge interiorsurface 2354, and/or ii) a top edge interior surface (not depicted inFIG. 23) and a bottom edge interior surface (not depicted in FIG. 23).FIG. 23 shows the inner carriage 2314 a, 2314 b having a left edgeinterior surface 2354 and a right edge interior surface 2356. However,it should be noted that the inner carriage 2314 a, 2314 b may have allfour edge interior surfaces or may only have a top edge interior surfaceand a bottom edge interior surface.

Each of the top edge interior surface (if present), the bottom edgeinterior surface (if present), the left edge interior surface 2354 (ifpresent), and the right edge interior surface 2356 (if present) may begenerally planar and extend between the back side interior surface 2350(and the face interior surface 2352 if present), and define a perimeterof each of the back side interior surface 2350 and the face interiorsurface 2352. The top edge interior surface (if present) and the bottomedge interior surface (if present) may each be orthogonal to each of theleft edge interior surface 2354 and the right edge interior surface2356. The face interior surface 2352 (if present) may include anaperture (or otherwise be open) through which a display screen 43 of amobile device 18 may be viewed and as such the face interior surface maybe a thin band which extends around along each of the left edge interiorsurface 2354 and right edge interior surface 2356.

At least a portion of the interior surface of the inner carriage 2314 a,2314 b conforms to at least a portion of an exterior surface 2348 of amobile device 18 for which the inner carriage 2314 a, 2314 b isdesigned. Each inner carriage 2314 a, 2314 b may have dimensions of itsinterior surface different from other inner carriages 2314 a, 2314 b.Each inner carriage 2314 a, 2314 b has its interior dimensions sized tofit the exterior dimensions of a mobile device 18 of a different size ormodel such that a mobile device 18 of a different size or model may beaccommodated in the outer case 2312 using a corresponding inner carriage2314 a, 2314 b designed for the mobile device 18.

At least a portion of the exterior surface 2344 of the inner carriage2314 a, 2314 b conforms to at least a portion of one or more of theinterior surfaces of the outer case 2312. The inner carriage 2314 a,2314 b, when inserted into the cavity 2317, may be secured in positionwithout room for movement in at least one of the directions: i) betweenthe top edge interior surface 2340 and the bottom edge interior surface;ii) between the left edge interior surface 2326 and the right edgeinterior surface 2324; and iii) between the back side interior surface2320 and the face interior surface 2322. In directions where the fitbetween portions of the exterior surface 2344 of the inner carriage 2314a, 2314 b and the interior surfaces of the outer case 2312 may not fullysecure the inner carriage 2314 a, 2314 b from movement, when a mobiledevice 18 is inserted into the inner carriage 2314 a, 2314 b and thecombination is inserted into the cavity 2317, the combined exteriordimensions of the inner carriage 2314 a, 2314 b and the mobile device 18may secure the inner carriage 2314 a, 2314 b from movement in at leastone of the directions: i) between the top edge interior surface 2340 andthe bottom edge interior surface; ii) between the left edge interiorsurface 2326 and the right edge interior surface 2324; and iii) betweenthe back side interior surface 2320 and the face interior surface 2322.

The mobile device 18 is accommodated within the inner carriage 2314 a,2314 b and the combination of the inner carriage 2314 a, 2314 b and themobile device 18 is inserted into the cavity 2317 of the outer case2312. The combined exterior dimensions of the inner carriage 2314 a,2314 b and the mobile device 18 may fit the interior dimension of thecavity 2317 so that the combination of the inner carriage 2314 a, 2314 band the mobile device 18 is secured from movement in all of directions:i) between the top edge interior surface 2340 and the bottom edgeinterior surface; ii) between the left edge interior surface 2326 andthe right edge interior surface 2324; and iii) between the back sideinterior surface 2320 and the face interior surface 2322. When sosecured, the position at which the mobile device 18 is positioned withrespect to the outer case 2312 is referenced to as the “operatingposition.”

The accessory 2300 also includes an optic system 2370. The optic system2370 is secured to the outer case 2312 and is configured to fold anoptical path (extending to the back side of the mobile device 18 to adirection extending into the area beyond the top edge of the mobiledevice 18) of at least one of a field of illumination of a light sourceof the mobile device 18 or a field of view of a camera of the mobiledevice 18 when the mobile device 18 is accommodated in the outer case2312 using the inner carriage 2314 a, 2314 b.

When the mobile device 18 is in the operating position, the optic system2370 of the accessory 2300 may be within at least one of the field ofillumination of the white light source of the mobile device 18 and/orthe field of view of the camera of the mobile device 18. The dimensionsof the inner carriage 2314 a, 2314 b are selected so that the mobiledevice 18 is positioned within the cavity 2317 of the outer case 2312 sothat the optic system 2370 is within at least one of the field ofillumination of the white light source of the mobile device 18 and/orthe field of view of the camera of the mobile device 18.

The optic system 2370 may include, or be configured similarly to, any ofthe other optic systems, or components, thereof, including thosedescribed with respect to FIGS. 10A, 10B, 10C, 10D, 11A, 11B, 12A, 12B,12C, 12D, 13, 14, and 15.

The outer case 2312 may include a connector 2330 on the interior surface(e.g., on the bottom interior surface of the outer case 2312) forconnection to the mating connector 2332 of the mobile device 18 when themobile device is secured in the outer case 2312. The outer case 2312 mayinclude a trigger switch (not shown) for an operator to triggercapturing of a barcode with the mobile device 18. A trigger circuitincluded in the outer case 2312 may send a trigger signal to the mobiledevice via the connector 2330 as described herein.

When the mobile device 18 is in the operating position, the connector2330 within the interior of the outer case 2312 is aligned bothvertically and horizontally with the mating connector 2332 on the mobiledevice 18. The dimensions and shape of the inner carriage 2314 a, 2314 bare selected so that when the combination of the inner carriage 2314 a,2314 b and the mobile device 18 is secured in the outer case 2312, theconnector 2330 in the outer case 2312 is aligned both vertically andhorizontally with the mating connector 2332 on the mobile device 18.FIGS. 24A and 24B are sectional views of exemplary inner carriages 2314a, 2314 b with a mobile device 18 inserted therein. The dimensionsincluding the thickness 2334 a, 2334 b of the back panel 2336 a, 2336 bof each inner carriage 2314 a, 2314 b and the shape of the internalsurfaces of each inner carriage 2314 a, 2314 b are selected for aparticular model or size of a mobile device 18 a, 18 b, respectively, sothat when the combination of the mobile device 18 a, 18 b and thecorresponding inner carriage 2314 a, 2314 b is inserted into the outercase 2312, the connector 2330 in the outer case 2312 and the matingconnector 2332 on the mobile device 18 are aligned.

Each inner carriage 2314 a, 2314 b may include one or more apertures2360 a, 2360 b within one or more of its walls to expose control buttonsor switches on the mobile device 18 when the mobile device 18 isinserted into the inner carriage 2314 a, 2314 b. Each inner carriage2314 a, 2314 b is designed for a mobile device 18 of a particular modelor size so that each aperture 2360 a, 2360 b is positioned for thecontrol buttons or switches on the mobile device 18 of a particularmodel or size for which the inner carriage 2314 a, 2314 b is designed.Alternatively, instead of the aperture(s) 2360 a, 2360 b, a flexiblebutton or switch may be formed in the corresponding position in thewall(s) of the inner carriage 2314 a, 2314 b so that the control buttonsor switches on the mobile device 18 may be operated through the flexiblebutton or switch formed in the wall(s) of the inner carriage 2314 a,2314 b.

The outer case 2312 may include one or more apertures 2362 in one ormore of its walls in a location(s) corresponding to the aperture 2360 a,2360 b in the inner carriage 2314 a, 2314 b. The aperture(s) 2362 mayinclude a superset of the apertures 2360 a, 2360 b of some or all ofinner carriages 2314 a, 2314 b that the outer case 2312 may accommodate.Stated another way, since the outer case 2312 may accommodate a numberof different inner carriages 2314 a, 2314 b designed for differentmobile devices, an aperture 2362 may be formed within the wall(s) of theouter case 2312 to cover apertures 2360 a, 2360 b of some or all of theinner carriages 2314 a, 2314 b that may be inserted into the outer case2312. As such, the control buttons or switches of each mobile device 18may be accessed through the aperture 2360 a, 2360 b in the innercarriage 2314 a, 2314 b and the aperture 2362 in the outer case 2312.The aperture 2362 in the outer case 2312 may be larger than the aperture2360 a, 2360 b in the inner carriage 2314 a, 2314 b. Alternatively,instead of aperture(s) 2362, a flexible button(s) or switch(es) may beformed in the wall(s) of the outer case 2312 so that the control buttonsor switches on the mobile device may be operated through the flexiblebuttons or switches.

FIG. 25 shows an exemplary outer case 2512 and exemplary inner carriages2514 a -2514 c with structural components similar to those describedwith respect to FIG. 23. The outer case 2512 may comprise two matingparts 2512 a, 2512 b that are combined to form the outer case 2512. Forexample, one of the mating parts 2512 a, 2512 b may include a tongue(s)2513 and the other may include a groove (not shown) for connecting thetwo mating parts 2512 a, 2512 b. Alternatively, any other connecting andlocking mechanism may be employed to combine the two mating parts 2512a, 2512 b.

Each inner carriage 2514 a -2514 c is designed for accommodating amobile device 18 a-18 c of a different model or size. Each combinationof an inner carriage 2514 a -2514 c and a mobile device 18 a-18 c isinserted into the cavity of the outer case 2512. The outer case 2512includes a connector 2530 for connecting with a mating connector on themobile device 18 a-18 c.

A handle 2540 may be attached to, or be a part of, the outer case 2512,similar to the embodiment shown in FIG. 14. The handle 2540 may beattachable and detachable. The handle 2540 extends downward away fromthe back exterior surface of the outer case 2512 and is sized and shapedto be gripped by an operator with the operator's hand. When held by theoperator, the face surface of the mobile device 18 a-18 c is visible tothe operator looking downward. The handle 2540 may have a trigger switchto enable the operator to initiate reading of a barcode with the mobiledevice 18 a-18 c. The trigger switch activates a trigger circuit in thehandle 2540 which sends a trigger signal to the mobile device 18 via theconnector 2530. The handle 2540 may include a battery for supplyingpower to the components in the handle 2540 and a charging power to themobile device 18.

An optic system 2570 may be attached to, or be a part of, the outer case2512. When the mobile device 18 is inserted into the outer case 2512,the optic system 2570, similar to the attachment 110 disclosed withrespect to FIGS. 10C and 10D, may fold the optical path of the field ofillumination of the light source of the mobile device 18 and/or thefield of view of the camera of the mobile device 18 such that the fieldof illumination of the light source or the field of view of the camerais folded from the back side of the mobile device 18 towards the targetarea positioned at the top side of the mobile device 18.

The optic system 2570 may include, or be configured similarly to, any ofthe other optic systems, or components, thereof, including thosedescribed with respect to FIGS. 10A, 10B, 10C, 10D, 11A, 11B, 12A, 12B,12C, 12D, 13, 14, and 15.

FIG. 26 shows an exemplary barcode-reading enhancement accessory 2600 a,2600 b, 2600 c configured as an encapsulating attachment in accordancewith another embodiment. FIG. 27 shows the barcode-reading enhancementaccessory of FIG. 26 with a mobile device encased into the cavity of thecase. FIG. 28 shows the combined state of the case and the handleassembly of the barcode-reading enhancement accessory of FIG. 26.

A barcode-reading enhancement accessory 2600 a, 2600 b, 2600 c maycomprise a handle assembly 2601 a, 2601 b, 2601 c and a case 2604 a,2604 b, 2604 c. Each case 2604 a, 2604 b, 2604 c is configured forencasing a mobile device 18 a, 18 b, 18 c of a different model or size.The interior and/or exterior dimensions of each case 2604 a, 2604 b,2604 c is designed differently for accommodating a particular model orsize of a mobile device 18 a, 18 b, 18 c. The handle assembly may begeneric to all or some of the cases 2604 a, 2604 b, 2604 c so that thesame handle assembly may be used with multiple cases 2604 a, 2604 b,2604 c. Alternatively, each handle assembly 2601 a, 2601 b, 2601 c maybe designed for a particular mobile device and may be used with acorresponding case designed for the particular mobile device.

The case 2604 a, 2604 b, 2604 c may comprise a cavity 2618 a, 2618 b,2618 c into which a mobile device 18 a, 18 b, 18 c is inserted. Thecavity 2618 a, 2618 b, 2618 c may be defined by interior surfacescomprising a back side interior surface 2620 a, 2620 b, 2620 c, a faceinterior surface 2622 a, 2622 b, 2622 c, which is generally parallel tothe back side interior surface 2620 a, 2620 b, 2620 c, a top edgeinterior surface 2640 a, 2640 b, 2640 c, a left edge interior surface2626 a, 2626 b, 2626 c, and a right edge interior surface 2624 a, 2624b, 2624 c, which is opposite, and parallel, to the left edge interiorsurface 2626 a, 2626 b, 2626 c.

The case (e.g., case 2604 a) may also include a bottom edge interiorsurface 2641 a, which is opposite, and parallel, to the top edgeinterior surface 2640 a. The case (e.g., case 2604 b, 2604 c) may nothave the bottom edge interior surface. In this case, a docking surface2668 b, 2668 c of the handle assembly 2601 b, 2601 c closes the cavity2618 b, 2618 c.

Each of the top edge interior surface 2640 a, 2640 b, 2640 c, the bottomedge interior surface 2641 a (or the docking surface 2668 a, 2668 b,2668 c), the left edge interior surface 2626 a, 2626 b, 2626 c, and theright edge interior surface 2624 a, 2624 b, 2624 c may be generallyplanar and extend between the back side interior surface 2620 a, 2620 b,2620 c and the face interior surface 2622 a, 2622 b, 2622 c, and definea perimeter (perimeter edges) of each of the back side interior surface2620 a, 2620 b, 2620 c and the face interior surface 2622 a, 2622 b,2622 c. The top edge interior surface 2640 a, 2640 b, 2640 c and thebottom edge interior surface 2641 a (or the docking surface 2668 a, 2668b, 2668 c) may each be orthogonal to each of the left edge interiorsurface 2626 a, 2626 b, 2626 c and the right edge interior surface 2624a, 2624 b, 2624 c.

The back side interior surface 2620 a, 2620 b, 2620 c and the bottomedge interior surface 2641 a may each include apertures 2662 a, 2662 b,2662 c and 2664 a, respectively. The lack of the bottom edge interiorsurface in cases 2604 b and 2604 c forms apertures 2664 b and 2664 c.

The handle assembly 2601 a, 2601 b, 2601 c may include a handle 2602 a,2602 b, 2602 c and a platform 2603 a, 2603 b, 2603 c. The platform 2603a, 2603 b, 2603 c includes a platform surface 2666 a, 2666 b, 2666 c anda docking surface 2668 a, 2668 b, 2668 c. When the case 2604 a, 2604 b,2604 c is coupled to the handle assembly 2601 a, 2601 b, 2601 c, theplatform surface 2666 a, 2666 b, 2666 c may: i) be flush (alternativelymay not be flush) with the back side interior surface 2620 a, 2620 b,and 2620 c, and ii) fill (or substantially fill) the aperture 2662 a,2662 b, 2662 c. Similarly the docking surface 2668 a, 2668 b, 2668 cmay: i) be flush (alternatively may not be flush) with the bottom edgeinterior surface 2641 a, and fill (or substantially fill) the aperture2664 a, 2664 b, 2664 c thereby completing the partial bottom edgeinterior surface 2641 a of the case 2604 a or becoming the entire bottomedge interior surface of the case 2604 b, 2604 c.

As shown in FIG. 28, the case 2604 a, 2604 b, 2604 c (with the mobiledevice 18 a, 18 b, 18 c encased in it) is coupled to the handle assembly2601 a, 2601 b, 2601 c before using as a barcode reading device. Forcoupling the case 2604 a, 2604 b, 2604 c to the handle assembly 2601 a,2601 b, 2601 c, a coupling structure may be provided in the case 2604 a,2604 b, 2604 c and the handle assembly 2601 a, 2601 b, 2601 c. Forexample, a tongue (or a groove) may be formed along the left and rightedges of the platform surface 2666 a, 2666 b, 2666 c and a groove (or atongue) may be formed along the left and right edges of the aperture2662 a, 2662 b, 2662 c of the back side interior surface of the case2604 a, 2604 b, 2604 c so that the case 2604 a, 2604 b, 2604 c may becoupled to the handle assembly 2601 a, 2601 b, 2601 c by sliding thetongue along the groove. Alternatively or additionally, a ridge and arail may be formed along the left and right edges of the platformsurface 2666 a, 2666 b, 2666 c and the left and right edges of theaperture 2662 a, 2662 b, 2662 c. The ridge/rail combination may provideadditional strength for securing the case 2604 a, 2604 b, 2604 c to thehandle assembly 2601 a, 2601 b, 2601 c and provide greater strengthagainst torsional forces in the direction 2692 shown in FIG. 29 than ifthe case 2604 a, 2604 b, 2604 c is simply mounted to the handle assembly2601 a, 2601 b, 2601 c by a mechanical structure on its bottom edge.

The face interior surface 2622 a, 2622 b, 2622 c may also include anaperture through which a display screen 43 of a mobile device 18 a, 18b, 18 c (as shown in FIG. 27) may be viewed and as such the faceinterior surface 2622 a, 2622 b, 2622 c may be a thin band which extendsaround the periphery defined by the top edge interior surface 2640 a,2640 b, 2640 c, the bottom edge interior surface 2641 a (or the dockingsurface 2668 a, 2668 b, 2668 c), the left edge interior surface 2626 a,2626 b, 2626 c, and the right edge interior surface 2624 a, 2624 b, 2624c.

The handle assembly 2601 a, 2601 b, 2601 c and the case 2604 a, 2604 b,2604 c are separable as depicted in both FIGS. 26 and 27 to enable themobile device 18 a, 18 b, 18 c to be inserted into, and removed from,the case 2604 a, 2604 b, 2604 c. The handle assembly 2601 a, 2601 b,2601 c and the case 2604 a, 2604 b, 2604 c may be coupled to each otherby sliding the case 2604 a, 2604 b, 2604 c towards the docking surface2668 a, 2668 b, 2668 c of the handle assembly 2601 a, 2601 b, 2601 c(while the bottom edge interior surface 2620 a, 2620 b, 2620 c is flushwith the platform surface 2666 a, 2666 b, 2666 c) and engaging alatching mechanism (not shown). Any conventional latching, fastening, orclamping mechanism may be used to secure the case 2604 a, 2604 b, 2604 cto the handle assembly 2601 a, 2601 b, 2601 c.

At least a portion of the interior surfaces (shown in FIG. 26) of thecase 2604 a, 2604 b, 2604 c (including the docking surface 2668 a, 2668b, 2668 c of the handle assembly 2601 a, 2601 b, 2601 c) conform to atleast a portion of an exterior surface of the mobile device 18 a, 18 b,18 b for which the case 2604 a, 2604 b, 2604 c is configured. Each case2604 a, 2604 b, 2604 c may have different dimensions of its interiorsurfaces to fit a mobile device 18 a, 18 b, 18 c of a different model orsize. More specifically, each case 2604 a, 2604 b, 2604 c may compriseinterior surfaces into which a particular model or size of a mobiledevice 18 a, 18 b, 18 c will securely fit. For example, case 2604 a maybe configured to fit the Apple iPhone 6 Plus®, case 2604 b may beconfigured to fit the Apple iPhone 6®, and case 2604 c may be configuredto fit the Apple iPhone 5/5s®.

When the case 2604 a, 2604 b, 2604 c carrying a mobile device 18 a, 18b, 18 c is coupled to the handle assembly 2601 a, 2601 b, 2601 c, theposition of the mobile device 18 a, 18 b, 18 c with respect to theaccessory 2600 a, 2600 b, 2600 c is referred to as the “operatingposition,” which is depicted in FIG. 28.

The accessory 2600 a, 2600 b, 2600 c may include an optic system 2670 a,2670 b, 2670 c. The optic system 2670 a, 2670 b, 2670 c is secured tothe case 2604 a, 2604 b, 2604 c and is configured to fold an opticalpath of at least one of a field of illumination of a light source of themobile device 18 a, 18 b, 18 c or a field of view of a camera of themobile device 18 a, 18 b, 18 c when the mobile device 18 a, 18 b, 18 cis accommodated in the case 2604 a, 2604 b, 2604 c.

When the mobile device 18 a, 18 b, 18 c is in the operating position,the optic system 2670 a, 2670 b, 2670 c of the accessory 2600 a, 2600 b,2600 c may be within at least one of the field of illumination of thewhite light source of the mobile device 18 a, 18 b, 18 c and/or thefield of view of the camera of the mobile device 18 a, 18 b, 18 c. Thedimensions of the case 2604 a, 2604 b, 2604 c are selected so that themobile device 18 a, 18 b, 18 c is positioned within the cavity 2618 a,2618 b, 2618 c of the case 2604 a, 2604 b, 2604 c so that the opticsystem 2670 a, 2670 b, 2670 c is within at least one of the field ofillumination of the white light source of the mobile device 18 a, 18 b,18 c and/or the field of view of the camera of the mobile device 18 a,18 b, 18 c.

In all embodiments, the operating system 48 or barcode readingapplication may process and decode an image captured by the camera ofthe mobile device as such image is modified by the optic system,including optic systems 2370, 2570 and 2670.

A connector 2672 a, 2672 b, 2672 c (e.g., Apple Lightning Connector®)may be provided on the docking surface 2668 a, 2668 b, 2668 c of thehandle assembly for connection to the mating connector 2632 a, 2632 b,2632 c of the mobile device 18 a, 18 b, 18 c when the combined mobiledevice and case is coupled to the handle assembly 2601 a, 2601 b, 2601c. When the mobile device 18 a, 18 b, 18 c is in the operating position,the connector 2672 a, 2672 b, 2672 c on the handle assembly is alignedboth vertically and horizontally with the mating connector 2632 a, 2632b, 2632 c on the mobile device 18 a, 18 b, 18 c. The dimensions andshape of the case 2604 a, 2604 b, 2604 c are selected so that when thecombination of the case and the mobile device is coupled to the handleassembly 2601 a, 2601 b, 2601 c, the connector 2672 a, 2672 b, 2672 c onthe handle assembly is aligned both vertically and horizontally with themating connector 2632 a, 2632 b, 2632 c on the mobile device 18 a, 18 b,18 c.

Typically the mating connector 2632 a, 2632 b, 2632 c on the mobiledevice 18 a, 18 b, 18 c will be in the center (between the left andright sides when the mobile device 18 a, 18 b, 18 c is viewed in aportrait mode) of the mobile device 18 a, 18 b, 18 c on its bottomsurface. There are certain scenarios where all of the mobile devices 18a, 18 b, 18 c for which the cases 2604 a, 2604 b, 2604 c are designedmay have the mating connector 2632 a, 2632 b, 2632 c positioned at thesame distance from the back side exterior surface of the mobile device18 a, 18 b, 18 c. In these scenarios, that distance can be used for thedistance between the platform surface 2666 a, 2666 b, 2666 c and theconnector 2672 a, 2672 b, 2672 c of the handle assembly 2601 a, 2601 b,2601 c and the back side interior surface 2620 a, 2620 b, 2620 c of eachcase 2604 a, 2604 b, 2604 c may be flush with the platform surface 2666a, 2666 b, 2666 c.

However, there may be other cases where the distance between the matingconnector 2632 a, 2632 b, 2632 c on a mobile device 18 a, 18 b, 18 c andthe mobile device's back side exterior surface varies among the mobiledevices 18 a, 18 b, 18 c for which cases are designed. In these cases,the back side interior surface 2620 a, 2620 b, 2620 c of the case 2604a, 2604 b, 2604 c may not be flush with the platform surface 2666 a,2666 b, 2666 c and the mobile device 18 a, 18 b, 18 c should be raisedabove the platform surface 2666 a, 2666 b, 2666 c to align the matingconnector 2632 a, 2632 b, 2632 c of the mobile device 18 a, 18 b, 18 cto the connector 2672 a, 2672 b, 2672 c on the docking surface 2668 a,2668 b, 2668 c. For example, as shown in the third example (case 2604 cand handle assembly 2601 c) in FIG. 26, a tongue 2665 may be provided inthe back side interior surface 2620 c of the case and a matching slot2663 may be formed in the platform surface 2666 c of the handle assembly2601 c. The thickness of the tongue 2665 can vary to raise the mobiledevice 18 c above the platform surface 2666 c to ensure alignment of theconnector 2672 c on the docking surface 2668 c with the mating connector2632 c on the mobile device 18 c.

Each case 2604 a, 2604 b, 2604 c may include one or more apertures 2674a, 2674 b, 2674 c, 2674 d within one or more of its walls to exposecontrol buttons or switches on the mobile device 18 a, 18 b, 18 c whenthe mobile device 18 a, 18 b, 18 c is inserted into the case 2604 a,2604 b, 2604 c. Each case 2604 a, 2604 b, 2604 c is designed for amobile device 18 a, 18 b, 18 c of a particular model or size so thateach aperture 2674 a, 2674 b, 2674 c, 2674 d is positioned for thecontrol buttons or switches on the corresponding mobile device 18 a, 18b, 18 c. Alternatively, instead of the aperture(s), a flexible button orswitch may be formed in the corresponding position in the wall(s) of thecase 2604 a, 2604 b, 2604 c so that the control buttons or switches onthe mobile device 18 a, 18 b, 18 c may be operated through the flexiblebutton or switch formed in the wall(s) of the case 2604 a, 2604 b, 2604c.

FIG. 29 is a cutaway view of an accessory 2600 with the handle assembly2601 assembled with a case 2604 to encase a mobile device 18. The handleassembly 2601 includes a handle 2602 extending downward away from theplatform 2603. The handle 2602 is sized and shaped to be gripped by anoperator with the operator's thumb and forefinger being positioned at ashoulder 2678 where the handle 2602 meets the platform 2603. When heldin this manner the display screen 43 of the mobile device 18 is visibleto an operator looking downward.

A trigger switch 2680 is positioned at the shoulder 2678 and is intendedto enable the operator to trigger reading of a barcode utilizing thesame ergonomics of a typical “gun” type of barcode reader. The triggerswitch 2680 activates a trigger or barcode rendering circuit 2682 in thehandle assembly 2601.

The handle assembly 2601 may include a battery 2664 for supplying powerto the components in the handle assembly 2601 as well as providingoperating power and/or charging power to the mobile device 18 throughthe connector 2672 on the docking surface 2668.

The optic system 2670 secured to the case 2604 may include a structuredescribed with respect to FIG. 10C or 10D for purposes of folding theoptical path of at least one of a field of illumination of a lightsource of the mobile device 18 or a field of view of a camera of themobile device 18 when the mobile device 18 is accommodated in the case2604. The field of illumination of a light source of the mobile device18 or the field of view of a camera of the mobile device 18 is foldedfrom the back surface of the mobile device 18 towards the target areapositioned at the top side of the mobile device 18.

The optic system 2670 may include, or be configured similarly to, any ofthe other optic systems, or components, thereof, including thosedescribed with respect to FIGS. 10A, 10B, 10C, 10D, 11A, 11B, 12A, 12B,12C, 12D, 13, 14, and 15.

The handle assembly 2601 may further include a supplemental illuminationsystem 2684. The supplemental illumination system 2684 may include oneor more LED illuminators for emitting illumination towards the front ofthe handle assembly 2601 (e.g., towards the top of the mobile device 18when the mobile device 18 is encased within the case 2604). Thesupplemental illumination system 2684 may emit targeting illumination(illumination for generating a targeting pattern) and/or exposureillumination (illumination for capturing a barcode).

The supplemental illumination system 2684 may be positioned at the frontedge of, or below, the platform 2603 and around a central point of themobile device 18 when the mobile device 18 is encased within the case2604. The distance from the supplemental illumination system 2684 to thetop side of the case 2604 may be different from case to case. As such,as shown in FIG. 29, the case 2604 may include a light pipe 2686 whichextends between an illumination receiving end 2688 b and an illuminationemitting end 2688 a. The illumination receiving end 2688 b is positionedwithin the field of illumination of the supplemental illumination system2684 (e.g., one or more LEDs) and input illumination generated by thesupplemental illumination system 2684 into the light pipe 2686. Theillumination emitting end 2688 a is positioned adjacent to the opticsystem 2670 and emits illumination into the system field of view toilluminate a barcode therein. Light received at the illuminationreceiving end 2688 b generally propagates through the light pipe 2686 tothe illumination emitting end 2688 a based on the principle of totalinternal reflection. The illumination emitting end 2688 a may include anoptic system 2690 of: i) the curvature of the illumination emitting end2688 a, ii) one or more lenses, and/or iii) one or more apertures tomodify the intensity distribution of the emitted illumination which isprojected into the target area as one of exposure illumination and/ortargeting illumination.

If emitted as exposure illumination, the optic system 2690 may functionto reduce variation of the intensity of the illumination over the fieldof view (e.g., even illumination across the field of view). If emittedas targeting illumination the optic system 2690 may function to increasevariation of the intensity of the illumination within portions of thefield of view to form a visible target pattern. In another embodiment,if emitted as a combination of both targeting illumination and exposureillumination, the optic system 2690 may function to decrease variationin the intensity of the illumination across the field of view (e.g.,even illumination across the field of view) with a very sharp andnoticeable decrease in the intensity of illumination at approximatelythe edges of the field of view such that the illumination patternappears to be a particular shape (e.g., square or rectangular) with evenintensity within the field of view and noticeably less illumination, ifany, being emitted outside the field of view.

The one or more LEDs of the supplemental illumination system 2684 maycomprise one or more LEDs of the same color (such as white LEDs, redLEDs, or blue LEDs) or may comprise LEDs of multiple colors such aswhite LEDs combined with amber LEDs. The LEDs may be the same color as,or different than, the one or more LEDs of the one or more illuminationsystems of the mobile device 18.

In one embodiment, the operating system or other software executing onthe mobile device 18 may hinder the use of the light source (e.g., anLED) of the mobile device 18 as targeting illumination if it does notsupport a sequence of turning the light source on for targeting, off forimage capture, and on for targeting at a rate rapid enough for a gooduser experience. In one embodiment, i) the light source (i.e., a torch)of the mobile device 18 may be used for exposure illumination and theoptic system 2670 may function to reduce variation of the intensity ofillumination emitted by the light source of the mobile device 18; andii) the supplemental illumination system 2684 may be used for targetingillumination.

Alternatively, the light source of the mobile device 18 may be used fortargeting and exposure illumination and the optic system 2670 mayfunction to reduce variation of the intensity of illumination emitted bythe light source of the mobile device 18 across the field of view with adistinct drop in intensity at approximately the edges of the field ofview to yield a particular illumination pattern (e.g., square orrectangular) suitable for targeting a barcode and exposing the barcodeduring image capture.

Alternatively, the light source of the mobile device 18 may be used forexposure illumination and targeting illumination (e.g., a square orrectangular pattern) and the supplemental illumination system 2684 maybe used as additional diffuse bright field illumination or really brightfar field illumination. Alternatively, the light source of the mobiledevice 18 may be used for targeting (e.g., bright field illumination ina square or rectangular pattern) but may be turned off if there is toomuch glare for exposure. The supplemental illumination system 2684 maybe used as diffuse bright field illumination and/or dark fieldillumination.

FIG. 30 shows another exemplary barcode-reading enhancement accessory3000 configured as an encapsulating attachment in accordance withanother embodiment. FIG. 31 depicts a case and a platform of theexemplary barcode-reading enhancement accessory along with a mobiledevice. FIG. 32 shows an exemplary barcode-reading enhancement accessorywith a different latching mechanism. FIG. 33 shows an exemplary casecoupled to a platform, which is configured as an encapsulatingattachment.

The barcode-reading enhancement accessory 3000 may comprise a handleassembly 3001 a, 3001 b and a case 3004 a, 3004 b, 3004 c. Each case3004 a, 3004 b, 3004 c is configured for encasing a mobile device (notshown) of a different model or size. The interior and/or exteriordimensions of each case 3004 a, 3004 b, 3004 c may be designeddifferently for accommodating a particular model or size of a mobiledevice. The handle assembly 3001 a, 3001 b may be generic to all or someof the cases 3004 a, 3004 b, 3004 c so that the same handle assembly maybe used with multiple cases 3004 a, 3004 b, 3004 c. Alternatively, eachhandle assembly 3001 a, 3001 b may be designed for a particular mobiledevice and may be used with a corresponding case designed for theparticular mobile device. It should be noted that FIG. 30 depicts threecases 3004 a, 3004 b, 3004 c and two handle assemblies 3001 a, 3001 b asan example, and the accessory 3000 may comprise one or more than onecases and one or more than one handle assembly.

The case 3004 a, 3004 b, 3004 c may comprise a cavity 3018 a, 3018 b,3018 c into which a mobile device 18 is inserted. The cavity 3018 a,3018 b, 3018 c may be defined by interior surfaces comprising a backside interior surface 3020 a, 3020 b, 3020 c, a face interior surface3022 a, 3022 b, 3022 c, which is generally parallel to the back sideinterior surface 3020 a, 3020 b, 3020 c, a top edge interior surface3040 a, 3040 b, 3040 c, a left edge interior surface 3026 a, 3026 b,3026 c, and a right edge interior surface 3024 a, 3024 b, 3024 c, whichis opposite, and parallel, to the left edge interior surface 3026 a,3026 b, 3026 c.

The case may have a bottom wall 3005 a, 3005 b, 3005 c as a separatepiece. The bottom wall 3005 a, 3005 b, 3005 c is secured to theremaining piece of the case 3004 a, 3004 b, 3004 c with a connectingmechanism to complete the case 3004 a, 3004 b, 3004 c. The case 3004 a,3004 b, 3004 c is combined with the handle assembly 3001 a, 3001 b, moreparticularly, with the platform 3003 a, 3003 b of the handle assembly3001 a, 3001 b. After the case 3004 a, 3004 b, 3004 c is coupled to thehandle assembly 3001 a, 3001 b, the docking surface 3068 a, 3068 b ofthe handle assembly 3001 a, 3001 b may close the cavity 3018 a, 3018 b,3018 c.

The case 3004 a, 3004 b, 3004 c and the platform 3003 a, 3003 b may becombined by sliding the case 3004 a, 3004 b, 3004 c towards the dockingsurface 3068 a, 3068 b of the platform 3003 a, 3003 b. The bottom wall3005 a, 3005 b, 3005 c of the case 3004 a, 3004 b, 3004 c is then closedand locked after the case 3004 a, 3004 b, 3004 c and the platform 3003a, 3003 b are combined. FIG. 33 shows the complete case combined withthe platform.

As shown in FIG. 30, one end of the bottom wall 3005 a, 3005 b, 3005 cand one corner of the case 3004 a, 3004 b, 3004 c may be coupled with apin so that the bottom wall 3005 a, 3005 b, 3005 c may freely rotate anda latching (fastening or clamping) mechanism may be provided at theother corner of the case 3004 a, 3004 b, 3004 c so that the other end ofthe bottom wall 3005 a, 3005 b, 3005 c may be secured by the latchingmechanism. Alternatively, as shown in FIG. 32, the bottom wall 3005 a,3005 b, 3005 c may be coupled to the case 3004 a, 3004 b, 3004 c withscrews or pins 3009. Any other conventional means may be used to securethe bottom wall 3005 a, 3005 b, 3005 c to the case 3004 a, 3004 b, 3004c.

Each of the top edge interior surface 3040 a, 3040 b, 3040 c, thedocking surface 3068 a, 3068 b of the handle assembly 3001 a, 3001 b,the left edge interior surface 3026 a, 3026 b, 3026 c, and the rightedge interior surface 3024 a, 3024 b, 3024 c may be generally planar andextend between the back side interior surface 3020 a, 3020 b, 3020 c andthe face interior surface 3022 a, 3022 b, 3022 c, and define a perimeter(perimeter edges) of each of the back side interior surface 3020 a, 3020b, 3020 c and the face interior surface 3022 a, 3022 b, 3022 c. The topedge interior surface 3040 a, 3040 b, 3040 c and the docking surface3068 a, 3068 b of the handle assembly 3001 a, 3001 b may each beorthogonal to each of the left edge interior surface 3026 a, 3026 b,3026 c and the right edge interior surface 3024 a, 3024 b, 3024 c.

The back side interior surface 3020 a, 3020 b, 3020 c may include anaperture 3062 a, 3062 b, 3062 c. The aperture 3062 a, 3062 b, 3062 c maybe formed in the center portion of the back side interior surface 3020a, 3020 b, 3020 c leaving a band in the top, left, and right sides ofthe back side interior surface 3020 a, 3020 b, 3020 c.

In one embodiment, the handle assembly 3001 a may include a handle 3002a and a platform 3003 a. In another embodiment, the handle assembly 3001b may include a platform 3003 b and may not have a handle. The handle3001 a may be attachable and detachable to the platform 3003 a.

The platform 3003 a, 3003 b includes a platform surface 3066 a, 3066 band a docking surface 3068 a, 3068 b. The platform 3003 a, 3003 b mayhave two decks. When the case 3004 a, 3004 b, 3004 c is coupled to thehandle assembly 3001 a, 3001 b, the case 3004 a, 3004 b, 3004 c isplaced on top of the lower deck 3007 a, 3007 b and the top surface (theplatform surface 3066 a, 3066 b) of the upper deck 3008 a, 3008 b may:i) be flush (or alternatively may not be flush) with the back sideinterior surface 3020 a, 3020 b, and 3020 c, and ii) fill (orsubstantially fill) the aperture 3062 a, 3062 b, 3062 c. After the case3004 a, 3004 b, 3004 c is coupled to the platform 3003 a, 3003 b, thedocking surface 3068 a, 3068 b becomes a partial bottom edge interiorsurface of the case 3004 a, 3004 b, 3004 c.

As shown in FIG. 31, the case 3004 a, 3004 b, 3004 c (with the mobiledevice 18 encased in it) is coupled to the handle assembly 3001 a, 3001b before using as a barcode reading device. For coupling the case 3004a, 3004 b, 3004 c to the handle assembly 3001 a, 3001 b, a couplingstructure may be provided in the case 3004 a, 3004 b, 3004 c and thehandle assembly 3001 a, 3001 b. For example, a tongue (or a groove) maybe formed along the left and right edges of the platform surface 3066 a,3066 b and a groove (or a tongue) may be formed along the left and rightedges of the aperture 3062 a, 3062 b, 3062 c of the back side interiorsurface of the case 3004 a, 3004 b, 3004 c so that the case 3004 a, 3004b, 3004 c may be coupled to the handle assembly 3001 a, 3001 b bysliding the tongue along the groove. Alternatively, the left and rightedges of the platform surface 3066 a, 3066 b and the aperture 3062 a,3062 b, 3062 c may have the matching cross-section (e.g., a slantededge) so that the platform 3003 a, 3003 b and the case 3004 a, 3004 b,3004 c may be secured by simply sliding the case 3004 a, 3004 b, 3004 ctowards the docking surface 3068 a, 3068 b along the matched edges ofthe platform surface 3066 a, 3066 b and the aperture 3062 a, 3062 b,3062 c. Alternatively or additionally, a ridge and a rail may be formedalong the left and right edges of the platform surface 3066 a, 3066 b,and the left and right edges of the aperture 3062 a, 3062 b, 3062 c. Theridge/rail combination may provide additional strength for securing thecase 3004 a, 3004 b, 3004 c to the handle assembly 3001 a, 3001 b andprovide greater strength against torsional forces (in the direction 2692as shown in FIG. 29) than if the case 3004 a, 3004 b, 3004 c is simplymounted to the handle assembly 3001 a, 3001 b.

The face interior surface 3022 a, 3022 b, 3022 c may also include anaperture through which a display screen 43 of a mobile device 18 may beviewed and as such the face interior surface 3022 a, 3022 b, 3022 c maybe a thin band which extends around the periphery defined by the topedge interior surface 3040 a, 3040 b, 3040 c, the docking surface 3068a, 3068 b, the left edge interior surface 3026 a, 3026 b, 3026 c, andthe right edge interior surface 3024 a, 3024 b, 3024 c.

At least a portion of the interior surfaces (shown in FIG. 30) of thecase 3004 a, 3004 b, 3004 c (including the docking surface 3068 a, 3068b of the handle assembly 3001 a, 3001 b) conform to at least a portionof an exterior surface of the mobile device 18 for which the case 3004a, 3004 b, 3004 c is configured. Each case 3004 a, 3004 b, 3004 c mayhave different dimensions of its interior surfaces to fit a mobiledevice 18 of a different model or size. More specifically, each case3004 a, 3004 b, 3004 c may comprise interior surfaces into which aparticular model or size of a mobile device 18 will securely fit. Forexample, case 3004 a may be configured to fit the Apple iPhone 6 Plus®,case 3004 b may be configured to fit the Apple iPhone 6®, and case 3004c may be configured to fit the Apple iPhone 5/5s®.

When the case 3004 a, 3004 b, 3004 c carrying a mobile device 18 iscoupled to the handle assembly 3001 a, 3001 b, the position of themobile device 18 with respect to the accessory is referred to as the“operating position.”

An optic system 3070 (as shown in FIG. 33) may be secured to the case3004 a, 3004 b, 3004 c. The optic system 3070 is configured to fold anoptical path of at least one of a field of illumination of a lightsource of the mobile device 18 or a field of view of a camera of themobile device 18 when the mobile device 18 is accommodated in the case3004 a, 3004 b, 3004 c.

When the mobile device 18 is in the operating position, the optic system3070 may be within at least one of the field of illumination of thewhite light source of the mobile device 18 and/or the field of view ofthe camera of the mobile device 18. The dimensions of the case 3004 a,3004 b, 3004 c are selected so that the mobile device 18 is positionedwithin the cavity 3018 a, 3018 b, 3018 c of the case 3004 a, 3004 b,3004 c so that the optic system 3070 is within at least one of the fieldof illumination of the white light source of the mobile device 18 and/orthe field of view of the camera of the mobile device 18.

The optic system 2070 may include, or be configured similarly to, any ofthe other optic systems, or components, thereof, including thosedescribed with respect to FIGS. 10A, 10B, 10C, 10D, 11A, 11B, 12A, 12B,12C, 12D, 13, 14, and 15.

A connector 3072 (e.g., the Apple Lightning Connector®), as shown inFIG. 33, may be provided on the docking surface 3068 a, 3068 b of thehandle assembly 3001 a, 3001 b for connection to the mating connector3032 (shown in FIG. 31) of the mobile device 18 when the combined mobiledevice and case is coupled to the handle assembly 3001 a, 3001 b. Whenthe mobile device 18 is in the operating position, the connector 3072 onthe handle assembly is aligned both vertically and horizontally with themating connector 3032 on the mobile device 18. The dimensions and shapeof the case 3004 a, 3004 b, 3004 c are selected so that when thecombination of the case and the mobile device is coupled to the handleassembly 3001 a, 3001 b, the connector 3072 on the handle assembly isaligned both vertically and horizontally with the mating connector 3032on the mobile device 18.

Typically the mating connector 3032 on the mobile device 18 will be inthe center (between the left and right sides when the mobile device 18is viewed in a portrait mode) of the mobile device 18 on its bottomsurface. There are certain scenarios where all of the mobile devices 18for which the cases 3004 a, 3004 b, 3004 c are designed may have themating connector 3032 positioned at the same distance from the back sideexterior surface of the mobile device 18. In these scenarios, thatdistance can be used for the distance between the platform surface 3066a, 3066 b and the connector 3072 of the handle assembly 3001 a, 3001 b,and the back side interior surface 3020 a, 3020 b, 3020 c of each case3004 a, 3004 b, 3004 c may be flush with the platform surface 3066 a,3066 b.

However, there may be other cases where the distance between the matingconnector 3032 on a mobile device 18 and the mobile device's back sideexterior surface varies among the mobile devices for which cases aredesigned. In these cases, the back side interior surface 3020 a, 3020 b,3020 c of each case 3004 a, 3004 b, 3004 c may not be flush with theplatform surface 3066 a, 3066 b and the mobile device 18 should beraised above the platform surface 3066 a, 3066 b to align the matingconnector 3032 of the mobile device 18 to the connector 3072 on thedocking surface 3068 a, 3068 b. For example, a tongue 3065 may beprovided in the back side interior surface 3020 c of the case and amatching slot 3063 may be formed in the upper deck 3008 a, 3008 b of theplatform 3003 a, 3003 b. The thickness of the tongue 3065 can vary toraise the mobile device 18 above the platform surface 3066 a, 3066 b toensure alignment of the connector 3072 on the docking surface 3068 a,3068 b with the mating connector 3032 on the mobile device 18.

Each case 3004 a, 3004 b, 3004 c may include one or more apertures 3074a, 3074 b, 3074 c, 3074 d within one or more of its walls to exposecontrol buttons or switches on the mobile device 18 when the mobiledevice 18 is inserted into the case 3004 a, 3004 b, 3004 c. Each case3004 a, 3004 b, 3004 c is designed for a mobile device 18 of aparticular model or size so that each aperture 3074 a, 3074 b, 3074 c,3074 d is positioned for the control buttons or switches on thecorresponding mobile device 18. Alternatively, instead of theaperture(s), a flexible button or switch may be formed in thecorresponding position in the wall(s) of the case 3004 a, 3004 b, 3004 cso that the control buttons or switches on the mobile device 18 may beoperated through the flexible button or switch formed in the wall(s) ofthe case 3004 a, 3004 b, 3004 c.

The handle 3002 a extends downward away from the platform 3003 a. Thehandle 3002 a is sized and shaped to be gripped by an operator. Whenheld by the operator, the display screen 43 of the mobile device 18 isvisible to an operator looking downward. A trigger switch (not shown inFIG. 30 but similar to the trigger switch 2680 shown in FIG. 29) may beprovided on the handle 3002 a to enable the operator to trigger readingof a barcode. In case where the handle assembly 3001 b does not includea handle, a trigger switch 3080 may be provided, for example, on theside of the case, as shown in FIG. 33. The trigger switch activates atrigger or barcode rendering circuit in the handle assembly 3001 a, 3001b. The handle assembly 3001 a, 3001 b may include a battery forsupplying power to the components in the handle assembly 3001 a, 3001 bas well as providing operating power and/or charging power to the mobiledevice 18 through the connector 3072.

Referring to FIG. 33, the optic system 3070 secured to the case 3004 mayinclude a structure described with respect to FIG. 10C or 10D forpurposes of folding the optical path of at least one of a field ofillumination of a light source of the mobile device 18 or a field ofview of a camera of the mobile device 18 when the mobile device 18 isaccommodated in the case 3004. The field of illumination of a lightsource of the mobile device 18 or the field of view of a camera of themobile device 18 is folded from the back surface of the mobile device 18towards the target area positioned at the top side of the mobile device18.

Referring to FIG. 30, the handle assembly 3001 a, 3001 b may furtherinclude a supplemental illumination system that is similar to thesupplemental illumination system 2684 in FIG. 29. The optic systemincluding the light pipe 2686, the illumination emitting and receivingends 2688 a, 2688 b, and the optic system 2690 may also be provided tothe case. Details of the supplemental illumination system and the opticsystems will not be provided here for simplicity. The supplementalillumination system may include one or more LED illuminators foremitting illumination towards the front of the handle assembly 3001 a,3001 b (e.g., towards the top of the mobile device 18 when the mobiledevice 18 is encased within the case 3004 a, 3004 b, 3004 c). Thesupplemental illumination system may be targeting illumination(illumination for generating a targeting pattern) and/or exposureillumination (illumination for capturing a barcode).

The barcode-reading enhancement system of the present invention mayinclude a barcode-reading application 500 that may be obtained from theapplication server 22 a, 22 b (shown in FIG. 1) and installed on themobile device 18 as described with respect to FIG. 3A.

FIG. 16 shows a block diagram of an exemplary barcode application 500.The exemplary barcode application 500 may include permutations of a userinterface control method 502, image capture control methods 504, adecoder 506, and a data control method 508.

FIG. 17 depicts a state machine 642 useful for user interface controlmethods 502 of the barcode application 500. The state machine 642 mayoperate either in a user interface state 644 or in a data collectionstate 646.

When in the user interface state 644, the (capacitive touch) displayscreen 66 and the backlight for the display screen are active and thecontents of the display screen 66 may be controlled by the barcodeapplication 500. When in the data collection state 646, the (capacitivetouch) display screen 66 may be turned off; the (capacitive touch)display screen 66 may be turned on, but the backlight may be turned off;or both the (capacitive touch) display screen 66 and the backlight maybe turned on, but the backlight intensity may be set to a minimum. Thedata collection state 646 is intended for conserving power (i.e., forextending battery life) when the operator is using the mobile device 18to read barcodes and does not need to simultaneously use the (captivetouch) display screen 66 for manual data entry.

To transition 648 from the user interface state 644 to the datacollection state 646, the barcode application 500 utilizing the datacontrol methods 508 may make a processing call to the operating systemof the mobile device 18 requesting to i) turn off the display andbacklight; ii) turn off the backlight (in the event the operating systemdoes not make the function of turning off the display available to theapplication); or iii) turn the backlight power to a minimum (in theevent the operating system does not make the function of turning off thedisplay or turning off the backlight available to the application). Ifnone of the foregoing options are available, the barcode application maysimply write a black image to the display and enter a state where allinput though the touch panel is ignored, thereby giving the appearancethat the display has been turned off.

When in the data collection state 646, multiple barcodes can be read insequence (utilizing the camera and targeting structure described hereinbut not requiring use of the display for targeting) and processed,stored, and/or transmitted by the application without requiring any userinteraction with the user interface. Examples of the functions that maybe performed by the application when in the data collection statewithout requiring user input include the functions of the relayapplication described in co-pending U.S. patent application Ser. No.14/319,193.

When a transition 650 to the user interface state 644 is required, thebarcode application 500 may make a processing call to the operatingsystem of the mobile device 18 requesting to i) turn on the display(i.e., the touch panel or backlight) in the event that these are turnedoff during the data collection state 646; ii) turn on the backlight (inthe event the operating system does not make the function of turning offthe display available to the application and therefore the displayremains “on” while the backlight remains “off” during the datacollection state 646); or iii) turn the backlight power up to a presentlevel (in the event the operating system does not make the function ofturning off the display or turning off the backlight available to theapplication, both remain “on” during the data collection state 646 whilethe backlight power has been turned down).

Events that may trigger transition 648 from the user interface state 644to the data collection state 646 include user activation of a hardwarecontrol on the mobile device 18 or activation of a software controlpresent on the display screen when in the user interface state 644.Events that may trigger transition 650 from the data collection state646 to the user interface state 644 include user activation of ahardware control on the mobile device 18 or a signal from a remotesoftware application which may include the application to which themobile device 18 is sending decoded barcode data.

Returning to FIG. 16, the image capture control methods 504 may comprisepermutations of color format control methods 504 a, autofocus controlmethods 504 b, auto-white balance control methods 504 c, resolution andpre-processing control methods 504 d, gain and shutter control methods504 e, and target and exposure illumination and shutter control methods504 f.

Permutations of these methods may be performed when the barcodeapplication 500 enters the data collection state 646 such that themobile device 18 is configured for barcode reading prior to the operatortriggering or otherwise initiating a barcode read. Permutation of thesemethods may be performed immediately following an unsuccessful decodewith adjustments made to certain image capture settings based onanalysis of the image that yielded the unsuccessful decode so that themobile device 18 is re-configured for barcode reading prior to the nextimage capture. Permutations of these methods may be performed after theuser has triggered or otherwise initiated a barcode read but prior toactual image capture to configure the mobile device 18 for the imagecapture.

As stated with respect to FIGS. 2A and 2E, the camera assembly 36 may becapable of generating both Y.U.V and R.G.B. color formatted outputs. Thecolor format control methods 504 a may query whether the image sensorand/or associated circuitry has been set to provide an output in theY.U.V. color space. If not, the color format control method 504 a mayissue a command to the operating system 48, the processor 44, or thesystem-on-chip circuits 92 to set the image sensor output to the Y.U.V.color space.

The R.G.B. format may commonly be used for general-purpose photography.However, for barcode reading and/or decoding, it may be advantageous touse the Y.U.V. format instead. This is because decoding a barcode imagemay be mostly reliant upon the pattern defined by the luminous intensity168 (shown in FIG. 2E) of each pixel in the barcode image. Optionally,the first chromatic 170 and the second chromatic 172 may even be ignoredby the application that decodes the barcode image.

Thus, the output module 91 of the system-on-chip circuits 92 may be setto provide the digital image output 162 in the form of the Y.U.V. dataformat 166 (or use Y.U.V data for the input to image processing circuitswithin the system-on-chip circuits 92). Accordingly, the application 50may instruct the output module 91, directly, through the operatingsystem 48, or through other control circuitry, to cause the outputmodule 91 to provide the digital image output 162, to use, for imageprocessing circuits, data in the Y.U.V format when the photo sensor 42is to be used for capturing a barcode image and to return in the R.G.B.format for general photography when barcode capturing operations arecomplete.

In one embodiment, for barcode images, the output module 91 may be setto provide the digital image output 162, or use for image processingdata in the form of the luminous intensity 168 for each pixel, and thefirst chromatic 170 and the second chromatic 172 may not even beprovided or used. This may reduce the traffic on the data bus, reduceimage processing time for image processing circuits, reduce theprocessing load of the processor 44, and/or save space in the image databuffer 89 of the memory 46.

As discussed with respect to FIG. 2A, the mobile device 18 may includean autofocus module 98. The autofocus module 98 may be optimized forphotography. The image capture control methods 504 of the barcodeapplication 500 may include autofocus control methods 504 b foradjusting the autofocus settings of the autofocus module 98 for barcodeimage capture. More specifically, the distance between the mobile device18 and a barcode 142 within a target area 140 may be within a relativelypredictable range of distances which is a much smaller range ofdistances between the mobile device and the subject of a general-purposephotograph. Thus, using customized autofocus settings for barcode imagecapture may facilitate obtaining proper focus and/or expedite the imagecapture process.

FIG. 18A illustrates exemplary autofocus options in the form of a graph610. As shown, a horizontal axis 612 represents a nonlinear continuum offocus positions (e.g., object distance that is best focused onto thephoto sensor). The camera assembly 36 of the mobile device 18 may have afull range 614 of focus positions. However, those on the upper and lowerends of the full range 614 may not be needed for barcode image capturebecause they represent object distances which are less than, or greaterthan, the typical distance between a barcode reader and a barcode.Accordingly, the autofocus settings of the camera assembly 36 may beconfigured specifically for barcode image capture, for example, viacommands to the autofocus module 98 (or the operating system 48controlling the autofocus module 98).

By way of example, the commands to the autofocus module 98 (or theoperating system 48) may allow the camera assembly 36 to focus at objectdistances within a limited range 616. The limited range 616 mayrepresent the useful range of object distances for barcode imagecapture, and exclude object distances too close to the mobile device 18and object distances too far from the mobile device 18 for barcodereading.

As another example, the commands to the autofocus module 98 (or theoperating system 48) may limit focus positions to discrete positionssuch as a first position 618 a, a second position 618 b, and a thirdposition 618 c. The first position 618 a, the second position 618 b, andthe third position 618 c may represent useful object distances forbarcode image capture. The optic system may have sufficient depth offield at each of the discrete positions to accommodate image capture ofa barcode within the target area 140 with sufficient sharpness fordecoding.

Setting autofocus to one of a plurality of discrete focus settings mayutilize a feedback-loop algorithm that is faster than the feedback-loopalgorithms for autofocus when performing photography wherein the imageis analyzed for sharpness and the best focus position is determinedwithin the entire range.

As discussed with respect to FIG. 2A, the system-on-chip circuits 92 mayinclude an auto-white balance module 93. As such the auto-white balancecontrol methods 504 c of the barcode application 500 (shown in FIG. 16)may issue a command to the operating system 48, the processor 44, or theauto-white balance module 93 to disable the auto-white balance functionof the image sensor and/or associated circuitry. This may be done, asindicated previously, to avoid degrading contrast when a narrow band ofillumination frequency is focused onto the image sensor for barcodereading.

As such, for barcode images, the output module 91 may be set to providethe digital image output 162, or use for image processing data that hasnot been subjected to modification by the disabled auto-white balancemodule 93.

The resolution and pre-processing control methods 504 d may control theresolution for the output image as well as other image processing whichmay be performed on the output image prior to storing in the image databuffer 89 for decoding. Speed enhancements for image processing anddecoding may be obtained by altering the resolution of the capturedimage. While high resolution images (e.g. 8 megapixels or more) may bedesirable for conventional photography, this resolution may not beneeded for barcode imaging and decoding. As long as the resolution issufficient for successful decoding of a barcode, there is typically noneed for an image of greater resolution.

Selection of the resolution may be done, for example, based on the typeof barcode to be scanned, the size of the barcode within the outputimage, and other factors, which may be determined from previous imagescaptured of the barcode. The resolution selected may be full resolution(i.e., one output pixel for each pixel captured by the image sensor) orbinned (i.e., one output pixel for each group of x pixels captured bythe image sensor).

FIG. 18B illustrates exemplary resolution binning methods that can beused to reduce the resolution of a barcode image. An exemplary image maybe captured, by way of example, in three different ways. In a firstscheme 620, no binning may be applied, and the image output may be thenative resolution (full resolution) of the photo sensor 42 (i.e., onedigital pixel value for each pixel captured by the photo sensor 42). Ina second scheme 622, moderate binning may be applied so that the outputhas one digital pixel value, for example, for every four pixels capturedby the photo sensor 42. The resulting output image data may thus beone-quarter of the resolution of the captured image data. In a thirdscheme 624, more aggressive binning may be applied so that the outputhas one digital pixel value, for example, for every six pixels capturedby the photo sensor 42. The resulting output image data may thus bevertical binning (non-square) and one-sixth of the resolution of thecaptured image data.

When binning is applied, various mathematical algorithms may be used toobtain the value of an output pixel, based on its constituent pixels ofthe captured image. According to some examples, the intensity values ofthe constituent pixels may be averaged to provide the value of theresulting output pixel.

The foregoing description is illustrative of certain types of imageprocessing that may be performed on image data while the image data isbeing transferred through the hardware circuits 90 and DMA 86 to theimage data buffer 89. A more complete description of image processingalgorithms that may be implemented in the hardware circuits 90 (or thesystem-on-chip circuits 92) is included in U.S. patent application Ser.No. 14/717,112. In the exemplary embodiment, the image resolution andpre-processing control methods 504 d of the barcode application 500 mayprovide instructions to the hardware circuits 90, the system-on-chipcircuits 92, and/or the operating system to set any of the foregoingimage pre-processing options as well as image pre-processing optionsdescribed in U.S. patent application Ser. No. 14/171,112.

In all cases, setting the resolution and image pre-processing selectionsmay entail the resolution and pre-processing control methods 504 dissuing a command to the operating system 48, the processor 44, theapplicable image processing circuits within the hardware circuits 90, orthe applicable image processing circuits within the system-on-chipcircuits 92.

Gain and shutter control methods 504 e may comprise setting imagecapture parameter values for one or more image frames to be sequentiallycaptured, including a gain setting and an exposure setting for eachframe as described in more detail in U.S. patent application Ser. No.14/171,112.

FIG. 19A depicts an exemplary embodiment of target and exposureillumination and shutter control methods 504 f in accordance with oneembodiment. Step 542 represents receiving a trigger signal indicatingthat a barcode is to be read. The trigger signal may be received inseveral alternative ways as represented by steps 542 a-542 e. Asdiscussed, the barcode application 500 may have a user interface (notshown) with one or more graphical elements displayed on the displayscreen 66. The user may use such graphical elements to initiate thebarcode scanning process (for example, by tapping a “scan” soft buttonon the display screen 66) (542 a).

Alternatively, the application may monitor the microphone connector 34 band the trigger signal may be a microphone input signal generated by theattachment as described with respect to FIG. 14 (542 b).

Alternatively, the application may monitor the data connector 64 b andthe trigger signal may be a data input signal generated by theattachment as described with respect to FIG. 13 (542 c).

Alternatively, the application may monitor the wireless communicationsystem 52 and the trigger signal may be a wireless radio frequency (RF)trigger signal generated by the attachment (542 d).

Alternatively, the application may monitor the target area 140 utilizinga sensor and the trigger signal may be automatically generated by theapplication detecting the presence of a barcode within the target area140 (542 e).

Step 544 represents pulsing the target illumination to generate adistinct illumination pattern within the target area 140 to assist theoperator in aiming the mobile device 18 with respect to the barcode forimage capture. The pulse may be generated for a duration sufficient forthe operator to aim the mobile device 18 or may be generated for ashorter period of time (on the order of 10 ms). As discussed, the targetillumination may be generated by the white light source 84 of the mobiledevice 18 (step 544 a) or may be an external target illumination source(step 544 b) within the attachment.

Step 546 represents a step of activing the exposure illumination. Incertain embodiments ambient illumination is used for providing diffuseillumination for image capture of a barcode. In these embodiments step546 may not be performed. In other embodiments the exposure illuminationmay be activated for image capture (step 546). As discussed, theexposure illumination may be generated by the white light source 84 ofthe mobile device 18 (e.g., a mobile device torch) (step 546 a) or maybe an external exposure illumination source (step 546 b) within theattachment. The barcode image is then captured (step 548).

Step 550 represents determining whether there has been a successfuldecode of the barcode represented in the captured image. If it has beensuccessful, then the method may end. If there has not been a successfuldecode, the image capture parameters may be adjusted at step 552 and thetarget illumination system may again be pulsed to further assist theuser in aiming the mobile device 18 with respect to the barcode at step544. It is recognized that several repeats of this process may berequired for: i) the operator to properly aim the mobile device 18 withrespect to the barcode (if the target illumination pulse is short), andii) the operator to have a correct combination of image captureparameters such that the resulting image is decodable.

FIG. 19B depicts another exemplary embodiment of target and exposureillumination and shutter control methods 504 f in accordance withanother embodiment. Some of the steps in FIGS. 19A and 19B are the sameand such steps will not be explained in detail for simplicity.

Step 542′ (i.e., any one of 542 a′ to 542 e′) represents receiving atrigger signal indicating that a barcode is to be read.

Step 554′ represents turning on a combination of targeting and exposureillumination. As discussed with respect to FIG. 8D, the intensetargeting pattern 400 may include diffuse illumination across a regionthat coincides with the system field of view 207 such that the targetingillumination is also the exposure illumination. As discussed, thetargeting and exposure illumination may be generated by the white lightsource 84 of the mobile device 18 (step 554 a′) or may be an externalillumination source within the attachment (step 554 b′).

Step 548′ represents image capture of a barcode, step 550′ representsdetermining whether there was a successful decode, and step 552′represents adjusting image capture parameters based on the previousimage captured, all as discussed with respect to FIG. 19A. If there is asuccessful decoding the targeting exposure illumination may be turnedoff at step 556′. If the decoding is not successful another image of thebarcode may be captured (step 548′) following adjustment of imagecapture parameters (step 552′) if any.

FIG. 19C represents a filtering arrangement for the targetingillumination and the supplemental optics which enable use of the methodsof FIG. 19B even if the intense targeting illumination pattern is notalso a diffuse illumination pattern across the entire barcode within thefield of view.

The visible spectrum 560 generally ranges from about 430 nm toapproximately 660 nm. In a first embodiment the targeting illuminationstructure may include a first narrow band pass filter which passes anarrow band of illumination (e.g., the band 564) within the visiblespectrum 560 while attenuating illumination (e.g., the band 566 a) belowthe band 564 and illumination (e.g., the band 566 b) above the band 564.In an exemplary embodiment, the first narrow band pass filter may haveits narrow pass band centered at a wavelength between 430 nm and 470 nmwhich are the wavelengths corresponding to blue illumination. When sucha filter is used to filter white illumination, the color of the intensetargeting illumination passed by the band pass filter would appear blue.

In another embodiment, the targeting illumination structure may includea low pass filter. The low pass filter passes wavelengths ofillumination (e.g., the band 570) which are within the visible spectrum560 below a predetermined threshold while attenuating wavelengths ofillumination (e.g., the band 572) above the threshold. In an exemplaryembodiment, the predetermined threshold may be between 470 nm and 500 nmsuch that the pass band (i.e., the passed illumination spectrum) issubstantially blue. When such a filter is used to filter whiteillumination, the color of the illumination passed by the filter appearsblue.

Although the first narrow band pass filter is depicted as having verydistinct edges (e.g. wavelengths within the pass band 564 are passedwith no attenuation and wavelengths outside the pass band 564 arecompletely attenuated) it is recognized in the art that the edges arenot as distinct as depicted, and some illumination within the pass band564 will also be attenuated and some illumination outside of the passband (i.e., the bands 566 a and 566 b) will also be passed. A mostefficient filter will minimize the amount of illumination within thepass band 564 that is attenuated and further minimize the amount ofillumination that is outside of the pass band (i.e., the bands 566 a and566 b) to be passed.

Similarly, although the low pass filter is depicted as having a verydistinct edge at the threshold (e.g., wavelengths below the thresholdare passed with no attenuation and wavelengths above the threshold arecompletely attenuated) it is recognized in the art that the edge is notas distinct as depicted, and some illumination within the band 570 willbe attenuated and some illumination within the band 572 will be passed.A most efficient filter will minimize the amount of illumination withinthe band 570 that is attenuated and further minimize the amount ofillumination in the band 572 that is outside of the band 570 to bepassed.

In other embodiments, the targeting illumination structure may include ahigh pass filter. The high pass filter passes wavelengths ofillumination (e.g., the band 578) which are within the visible spectrum560 above a predetermined threshold while attenuating wavelengths ofillumination (e.g., the band 576) below the threshold. In an exemplaryembodiment, the predetermined threshold may be 500 nm such that the passband 578 includes the entire visible spectrum excluding illuminationwhich is substantially blue.

As with the low pass filter, the high pass filter is depicted as havinga very distinct edge at the threshold (e.g. wavelengths above thethreshold are passed with no attenuation and wavelengths below thethreshold are completely attenuated) it is recognized in the art thatthe edge is not as distinct as depicted, and some illumination above thethreshold will be attenuated and some illumination below the thresholdwill be passed. A most efficient filter will minimize the amount ofillumination above the threshold that is attenuated and further minimizethe amount of illumination below the threshold that is passed.

It should be appreciated that when illumination from a white lightsource 84 of a mobile device 18 is filtered utilizing a narrow band passfilter (e.g., a pass band 564) or a low pass filter (e.g., a pass band570) and the illumination incident on the camera lens is filtered by ahigh pass filter (e.g., passing the band 578), the illuminationgenerated by the white light source 84, as filtered, may not be visibleto the camera because the portion of the illumination passed by the bandpass filter (e.g., passing the band 564) or the low pass filter (e.g.,passing the band 570) is attenuated by the high pass filter. As such, ifthe white light source 84 is used for generating an intense targetingillumination pattern within the field of view 207, the targeting patternmay not be visible to the camera (e.g., attenuated by the high passfilter) and ambient illumination passed by the high pass filter (e.g.,passing the band 578) is visible to the camera and is typicallysufficient for imaging and decoding a barcode.

This structure enables the accessory to further utilize optics togenerate a targeting pattern utilizing the white light source 84(filtered before or after being shaped by the optic) and enables theintense targeting illumination pattern to continue to illuminate thebarcode during image capture (enabling the operator to aim the mobiledevice 18 with respect to the barcode) without the targeting patternbeing visible to the camera and producing hot regions (intenseillumination) corresponding to the targeting pattern within the image.

Returning to FIG. 16, the decoder 506 of the barcode application 500 maycomprise known methods for image processing and decoding, includingmethods described in U.S. patent application Ser. No. 14/717,112. Asdiscussed with respect to FIGS. 19A and 19B, if decoding isunsuccessful, then a new barcode image may need to be captured. This maybe done by returning to the image capture control methods 504 andselecting new image capture parameters. This process may be repeateduntil the barcode image has been successfully decoded, or until the usercancels further image capture and/or decoding attempts.

In general the data control methods 508 of the barcode application 500control what processes are performed on data decoded from the barcode142 (decoded data) within the target area 140. In more detail, and withreference to FIG. 1, in a first aspect the data control methods 508 mayfunction as a mobile client to a remote non-legacy system which supportsmaintaining a Transmission Control Protocol/Internet Protocol (TCP/IP)connection with mobile devices (such as mobile device 18) via the LAN 12for exchanging data with the mobile device 18 (including receivingdecoded data from the mobile device 18) and controlling operation ofcertain aspects of the barcode application 500.

In a second aspect, the data control methods 508 may function as amobile client to an intermediary device. The intermediary devicesupports maintaining a TCP/IP connection with mobile devices (such asmobile device 18) via the LAN 12 for receiving decoded data from themobile device 18. In turn the intermediary device may further supportproviding decoded data received from the mobile device 18 to a legacysystem. This is useful when the legacy system is incapable of receivingdecoded data directly from the mobile device 18 via a TCP/IP connectionand therefore the barcode application 500 may function independently of,and requires no compatibility with, the communication protocols andfunctions of the legacy system, including those used for communicationbetween the legacy system and the intermediary device. The intermediarydevice may communicate with the legacy system, which may be a TCP/IPconnection separate from the TCP/IP connection through which the mobiledevice 18 communicates with the intermediary device.

In accordance with an embodiment, a non-transitory computer-readablemedium is provided for storing instructions for a barcode-readingapplication for a mobile device. The mobile device includes a cameraassembly, a network interface, a memory, and a processor for executingthe barcode-reading application including a decoder. The non-transitorycomputer-readable medium may include a code for controlling the cameraassembly to capture an image of a barcode, decoding the image of thebarcode to generate decoded data, and processing the decoded data; acode for controlling the network interface to establish a networkconnection to a licensing server and obtaining a license code from thelicensing server when in a base mode of operation; a code for subjectingthe license code to a predetermined algorithm and determining at leastone operating permission authorized by the license code; a code forenabling an enhanced mode of operation; and a code for implementing atleast one enhanced barcode-reading function which corresponds to the atleast one operating permission authorized by the license code when inthe enhanced mode of operation.

The at least one enhanced barcode-reading function may include afunction of decoding a barcode symbology that the decoder is restrictedfrom decoding in the base mode of operation. Alternatively oradditionally, the at least one enhanced barcode-reading function mayinclude a function of decoding multiple barcodes in sequence at a ratethat is faster than a rate at which the barcode-reading application candecode multiple barcodes in sequence in the base mode of operation.Alternatively or additionally, the at least one enhanced barcode-readingfunction may include a function of decoding a quantity of barcodes of aparticular symbology that exceeds a restricted quantity of barcodes ofthe particular symbology that the barcode-reading application can decodein the base mode of operation.

Alternatively or additionally, the at least one enhanced barcode-readingfunction may remove a demonstration restriction function under which thebarcode-reading application functions in the base mode of operation. Thedemonstration restriction function may be at least one of: i) a functionthat scrambles decoded data from a barcode of at least one symbology;ii) a function that restricts the decoded data or scrambled decoded datafrom a barcode of at least one symbology from being made available forfurther processing; or iii) a function that restricts the decoded dataor the scrambled decoded data from a barcode of at least one symbologyfrom being displayed on a display screen of the mobile device.

Alternatively or additionally, the at least one enhanced barcode-readingfunction may enable at least one enhanced image processing function thatimproves an ability to decode an image of a barcode and is not operablewhen the decoder operates in the base mode of operation.

The base mode of operation may include a base decoding mode of operationand a demonstration mode of operation. The computer-readable storagemedium may further include, for the base decoding mode of operation, acode for driving the camera assembly to capture an image of a barcode, acode for applying base decoder functions to the image to identify abarcode symbology, a code for decoding the barcode and making decodeddata available for further processing if the barcode symbology is a basesymbology, and a code for entering the demonstration mode of operationif the barcode symbology is not the base symbology. Thecomputer-readable storage medium may further include, for thedemonstration mode of operation, a code for applying at least oneenhanced barcode-reading function to decode the barcode, and a code forperforming at least one of: i) outputting an indication of successfuldecoding of the barcode, or ii) implementing a restriction function. Therestriction function may be at least one of: i) a function thatscrambles decoded data, ii) a function that restricts the decoded dataor scrambled decoded data from being made available for furtherprocessing by at least one application executing on the mobile device,or iii) a function that restricts the decoded data or the scrambleddecoded data from being displayed on a display screen of the mobiledevice.

The non-transitory computer-readable medium may further include a codefor performing an upgrade function in the demonstration mode ofoperation. The upgrade function may enable a user selection to obtainthe license code, obtain the license code based on the user selection,establish a network connection to the licensing server, and obtain thelicense code from the licensing server.

The non-transitory computer-readable medium may further include a code,in order to obtain the license code from the licensing server, forcommunicating to the licensing server one of: i) a unique identificationcode of the mobile device; or ii) a user identification code identifyinga controller of the mobile device.

FIG. 37A depicts a perspective view of a mobile device 18 encapsulatedwithin an encapsulating attachment 3700. The encapsulating attachment3700 may encapsulate the mobile device 18 as described with respect toFIGS. 5A, 5B, 12A, 12B, 12C, 12D, 13, and 14. Alternatively, theencapsulating attachment 3700 may be a combination of an outer case andan inner carriage (or a handle assembly with an encapsulating case) asdescribed with respect to FIGS. 23, 24A, 24B, 25, 26, 27, 28, 29, 30,31, 32, and 33. The encapsulating attachment 3700 is used as a barcodereading enhancement accessory (which may be simply referred to as an“accessory”) to enhance a barcode reading capability of a mobile device18. The barcode reading enhancement accessory and a barcode readingapplication that may be downloaded from a remote server into the mobiledevice 18 and executed by a processor of the mobile device 18 maycomprise a barcode-reading system. FIGS. 37A-37C and 38 do not show thedetails of the mobile device 18, but the mobile device 18 may be similarto the one depicted in FIGS. 2A-2C wherein a camera assembly 36(including a lens assembly 40) and a white light source 84 arepositioned, for example, near the upper left side of the back surface 74of the mobile device 18.

The encapsulating attachment 3700 includes an optics module 3702 whichfolds both the field of view 38 of the camera assembly 36 of the mobiledevice 18 and the field of illumination of the white light source 84 ofthe mobile device 18 similar to the folded field of view and/or foldedfield of illumination described with respect to FIGS. 10C, 10D, 11A,11B, 14, 25, 28, 29 and 33. A barcode to be read is presented in thetarget area which is located around the top side of the mobile device18.

The optics module 3702 is moveable with respect to the body 3701 of theencapsulating attachment 3700 such that the optics module 3702 may berepositionable between: i) a first position (i.e., an active position)where the optics module 3702 is positioned within the field of view ofthe camera assembly 36 of the mobile device 18 and the field ofillumination of the white light source 84 of the mobile device 18; andii) a second position (i.e., an inactive position) where the opticsmodule 3702 is positioned outside of both the field of view of thecamera assembly 36 of the mobile device 18 and the field of illuminationof the white light source 84 of the mobile device 18. The field of viewof the camera assembly 36 and the field of illumination of the whitelight source 84 may be unobstructed by the optics module 3702 in thesecond position.

The encapsulating attachment 3700 may include an aperture (not shown)extending around a periphery of both the field of view of the cameraassembly 36 and the field of illumination of the white light source 84.Through the aperture, the field of view of the camera assembly 36 andthe field of illumination of the white light source 84 may extend to beincident on the optics module 3702 when the optics module 3702 is in thefirst position, and the field of view and the field of illumination mayextend beyond the back side of the mobile device 18 when the opticsmodule 3702 is in the second position.

The optics module 3702 may be movable between the first position and thesecond position by sliding the optics module 3702 within a track 3704(e.g., a linear track) formed in the body 3701 of the encapsulatingattachment 3700, for example, in a way similar to that described withrespect to FIGS. 12A, 12B, 12C, 12D.

FIG. 37A depicts that the optics module 3702 is in the first positionsuch that the optics module 3702 is in the field of view of the cameraassembly 36 and the field of illumination of the white light source 84of the mobile device 18. FIG. 37B depicts that the optics module 3702 isin the second position such that the field of view of the cameraassembly 36 of the mobile device 18 and the field of illumination of thewhite light source 84 of the mobile device 18 are unobstructed.

In one embodiment, the direction of the track 3704 and the direction inwhich the optics module 3702 slides in the track 3704 may be generallyparallel to the top edge 78 of the mobile device 18, i.e., the opticsmodule 3702 may slide generally parallel to the top edge 78 from thefirst position close to the right edge 80 to the second position closeto the left edge 82, or vice versa. In another embodiment, the firstposition and the second position of the optics module 3702 may bedisplaced from each other in the direction parallel to the right edge 80and the left edge 82 of the mobile device 18, such that the opticsmodule 3702 may slide between the first position adjacent to the topedge 78 of the mobile device and a second position spaced farther awayfrom the top edge 78 of the mobile device 18, or vice versa. In thisembodiment, the track 3704 is generally parallel to the right edge 80and the left edge 82 of the mobile device 18. This configuration may beuseful when the camera assembly 36 and the white light source 84 of themobile device 18 are positioned near the center of the back surface 74(e.g. approximately centered between the right edge 80 and the left edge82 of the mobile device 18).

The encapsulating attachment 3700 may include systems includingattachment control circuitry 270, a trigger circuit 161, a battery 272,163, a user control 288 to initiate the capture of a barcode, a triggerswitch 157, links 276 a, 276 b, and/or a microphone connector 155 asdiscussed with respect to Figures and 14 for interfacing with the mobiledevice 18 (e.g., via the speaker/microphone connector 34 and/or thepower/data connector 64 of the mobile device 18) and its operatingsystem and any barcode reading application operated thereon. In oneembodiment, the systems (including the attachment control circuitry 270,the trigger circuit 161, the battery 272, 163, the user control 288, thetrigger switch 157, the links 276 a, 276 b, and/or the microphoneconnector 155) may be included in a separate detachable package 3703that may be attached to the encapsulating attachment 3700.Alternatively, the encapsulating attachment 3700 including such systemsmay be a single piece.

FIG. 37C, like FIG. 37A, depicts the optics module 3702 in the firstposition. The encapsulating attachment 3700 may include a lockingcomponent to lock the optics module 3702 in the first position. Forexample, the locking component may be a spacer component 3706 whichclips into or otherwise engages with the track 3704 and fills the spacebetween the optics module 3702 (when in the first position) and a sideedge of the encapsulating attachment 3700 thereby preventing movement ofthe optics module 3702 when the spacer component 3706 is clipped intothe track 3704. Use of the spacer component 3706 also makes theappearance of the encapsulating attachment 3700 more aestheticallypleasing when the optics module 3702 is in the first position.

FIG. 38 shows an alternative encapsulating attachment 3710 without theseparate detachable package 3703. Whereas the encapsulating attachment3700 shown in FIGS. 37A-37C may include systems such as attachmentcontrol circuitry 270, a trigger circuit 161, a battery 272, 163, a usercontrol 288 to initiate the capture of a barcode, a trigger switch 157,links 276 a, 276 b, and/or a microphone connector 155, the encapsulatingattachment 3710 shown in FIG. 38 may not include these systems. FIG. 38depicts the optics module 3702 removed entirely from the track 3704.

FIGS. 39A and 39B are an assembled view and an exploded view of theoptics module 3702, respectively. FIGS. 40A and 40B are cross-sectionalviews of the optics module 3702 along the A-A′ and B-B′ sections (shownin FIG. 39A), respectively.

Referring to FIGS. 39A, 39B, 40A, and 40B, the optics module 3702 isexplained in detail. The optics module 3702 includes a chassis 3750. Thechassis 3750 includes a sliding structure (not shown) for engaging withthe track 3704 and permitting sliding in the direction of the track 3704but preventing the optics module 3702 from being removed from the track3704 (i.e., the sliding structure restricts movement in any directionother than the direction of the track 3704). The chassis 3750 includes acavity 3751 in which a mirror support 3764, a mirror 3766 (i.e., areflective surface), a collimating lens 3768, and/or a filter 3762 areaccommodated. The mirror support 3764 holds the mirror 3766 within thefield of view of the camera assembly 36 and the field of illumination ofthe white light source 84 of the mobile device 18. In an embodiment, themirror support 3764 may hold the mirror 3766 at a 45 degree angle withrespect to the optical axis of the camera assembly 36 of the mobiledevice 18. The chassis 3750 may include an aperture 3756, 3757 which mayextend around the periphery of the field of view of the camera assembly36 and the field of illumination of the white light source 84,respectively. Through the aperture 3756, 3757 the field of view of thecamera assembly 36 and the field of illumination of the white lightsource 84 may extend into the optics module 3702 when the optics module3702 is in the active position.

To prevent dirt and debris from accumulating on the mirror 3766 andother components, the interior (e.g., the cavity 3751) of the opticsmodule 3702 may be sealed with a clear top window 3760 and a clear frontwindow 3770. In other words, the optics module 3702 may comprise asealed enclosure. The top window 3760 may sit within a top recess 3758of the chassis 3750. The front window 3770 may sit within a front recess3772 of the chassis 3750.

The top window 3760 to the sealed enclosure may be generally parallel tothe back surface 74 of the mobile device 18. Through the top window3760, the illumination from the white light source 84 enters the sealedenclosure (e.g., via the cavity 3751) and the illumination from thetarget area (e.g., the light reflected from the target area including abarcode presented in the target area) exits the sealed enclosure and isincident on the camera assembly 36. The front window 3770 to the sealedenclosure may be generally perpendicular to the back surface 74 of themobile device 18. Through the front window 3770, the illumination fromthe white light source 84 exits the sealed enclosure to the target areaand the illumination from the target area enters the sealed enclosureand is incident on the mirror 3766.

The top window 3760 may comprise a first window portion 3760 a and asecond window portion 3760 b. The first window portion 3760 a may lie inthe field of view of the camera assembly 36 and the second windowportion 3760 b may lie in the field of illumination of the white lightsource 84 of the mobile device 18. To prevent illumination from thewhite light source 84 of the mobile device 18 from affecting the imagecaptured by the camera assembly 36, a baffle component 3760 c (e.g., anoptical barrier) may separate the first window portion 3760 a and thesecond window portion 3760 b. Because of the baffle component 3760 c,the illumination from the white light source 84 projected through thesecond window portion 3760 b does not, by total internal reflection,propagate to the first window portion 3760 a and affect the imagecaptured by the camera assembly 36.

The front window 3770 may comprise a first window portion 3770 a and asecond window portion 3770 b. The first window portion 3770 a may lie inthe field of view of the camera assembly 36 and the second windowportion 3770 b may lie in the field of illumination of the white lightsource 84 of the mobile device 18. To prevent illumination from thewhite light source 84 of the mobile device 18 from affecting the imagecaptured by the camera assembly 36, a baffle component 3770 c (e.g., anoptical barrier) may separate the first window portion 3770 a and thesecond window portion 3770 b. Because of the baffle component 3770 c,the illumination from the white light source 84 projected through thesecond window portion 3770 b does not, by total internal reflection,propagate to the first window portion 3770 a and affect the imagecaptured by the camera assembly 36.

Alternatively, the top window 3760 and the front window 3770 maycomprise two separate windows, respectively. The cavity 3751 may also beseparated with a barrier or a wall.

The optics module 3750 may include a collimating optic within the fieldof illumination of the white light source 84. The collimating optic isfor forming the illumination from the white light source 84 to project atargeting illumination pattern to the target area when the optics module3750 is in an active position. The collimating optic may comprise acollimating lens 3768 and an aperture 3754.

For purposes of using the white light source 84 of the mobile device 18to generate a targeting illumination pattern, the chassis 3750 mayinclude a rectangular-shaped aperture 3754 that restricts the field ofillumination of the white light source 84 of the mobile device 18 to ashape that is generally rectangular and within the center of the fieldof illumination. The restricted rectangular field of illumination may beincident on the mirror 3766 and folded towards the target area. Acollimating lens 3768 collimates the rectangular field of illuminationto a sharp rectangle that is visible on a surface positioned within thetarget area.

The collimating optic may further include a filter 3762 for passing alimited spectrum of the illumination emitted by the white light source84 whereby the targeting illumination pattern, when incident on asurface, appears a color of the limited spectrum. The filter 3762 may bea low pass filter, a band pass filter, a high pass filter, or any typeof filter. The filter 3762 (e.g., a blue-colored narrow band filter) maybe positioned within the field of illumination of the white light source84 of the mobile device 18 (e.g., on the top of the chassis 3750 underthe top window 3760) such that the targeting illumination visible withinthe target area may be primarily the color passed by the filter 3762(e.g., the blue-colored illumination).

The collimating lens 3768 may be positioned on the front of the mirror3766 behind the front window 3770. Alternatively, the collimating lens3768 may be positioned between the top window 3760 and the mirror 3766.Alternatively, the collimating lens 3768 may be positioned between themirror 3766 and the front window 3770.

As discussed, it is useful to be able to capture an image and decode thebarcode while the targeting illumination remains on. However, thetargeting illumination may be primarily a single color, and may be muchbrighter than areas adjacent to the rectangular field of targetingillumination. In addition, the size and shape of the rectangular fieldof targeting illumination may not be sufficient to illuminate an entirebarcode. Image processing may be used to minimize those effects.

FIG. 34 depicts an exemplary image processing method for capturing abarcode while targeting illumination is on. The processing forcapturing, decoding, and processing a barcode may be implemented by abarcode reading application running on the mobile device 18. Step 3410represents capturing an image by the camera assembly 36 of the mobiledevice 18 while the targeting illumination is on, outputting the image(e.g., in an RGB format) as described with respect to FIG. 2E, andsaving each of the blue, green, and red channel images (referred to asfirst, second, and third channel images hereafter). The image capturefunction of the barcode reading application may control the white lightsource 84 and the camera assembly 36 of the mobile device 18 to capturea color image of the target area illuminated by illumination generatedby the white light source 84 and filtered by the filter 3762.

The camera assembly 36 of the mobile device 18 may include a color imagecapture system including an image sensor array for generating a colorimage of the target area. The white light source 84 of the mobile device18 generates illumination (e.g., white light) encompassing a first bandof illumination, a second band of illumination, and a third band ofillumination (e.g., the visible spectrum encompassing the blue, green,and red spectrums of illumination). The illumination from the whitelight source 84 may be filtered by the filter 3762 to generate targetingillumination of a particular frequency band (e.g., a particularfrequency spectrum). For example, the filter 3762 for generating thetargeting illumination may be a narrow band filter to generatesingle-color illumination (e.g., blue illumination). The color imagecaptured by the camera assembly 36 of the mobile device 18 may comprisea first sub-image captured with a portion of the image sensor arraysensitive to the first band of illumination, a second sub-image capturedwith a portion of the image sensor array sensitive to the second band ofillumination, and a third sub-image captured with a portion of the imagesensor array sensitive to the third band of illumination. Each of thefirst, second, and third bands may be a red, green, or blue band.

Referring to FIG. 35A, the color image (shown in grayscale) is acomposite image of each of the first, second, and third channel images.The reflection of the rectangular targeting bar 3510 (e.g., thetargeting illumination) is clearly shown in FIG. 35A with the brightnessand contrast on the regions of the barcode under the targeting bar 3510being brighter and higher contrast than the regions of the barcode thatare not within the targeting bar 3510.

In the example shown in FIGS. 35A-35D, the targeting illumination isgenerated in blue color. However, it should be noted that theembodiments disclosed herein are applicable to targeting illumination ofany color. FIG. 35B depicts the first channel image (the blue channelimage). In this example, because the blue channel is most sensitive tothe targeting illumination when the targeting illumination is filteredby a band-pass filter passing mostly blue illumination, the targetingbar 3510 within the first channel image is extremely bright andsaturated, exceeding the dynamic range of the A/D converters used fordigitizing the image.

FIG. 35C and FIG. 35D depict the second channel image (the green channelimage) and the third channel image (the red channel image),respectively. The green channel image is more sensitive to the blueillumination because it is closer within the visible light spectrum toblue than is the red channel image. The image processing function of thebarcode reading application may create a grayscale composite image ofthe barcode within the target area by combining the first sub-image, thesecond sub-image, and/or the third sub-image.

Returning to FIG. 34, step 3412 represents locating the targeting bar3510 within the image. This step may be performed by identifying theregion of saturation in the channel known to be most sensitive to thecolor of the targeting illumination (e.g., the blue channel if thetargeting bar 3510 is produced by a blue-pass filter and appears blue,the red channel if the targeting bar 3510 is produced by a red-passfilter and appears red, and the green channel if the targeting bar 3510is produced by a green-pass filter and appears green).

Step 3414 represents determining intensity profile values for theremaining channels (e.g., the second and third channels) that are leastsensitive to the band of the targeting illumination. The intensityprofile value for the first channel may also be determined. Theintensity profile values for each channel may be determined based on atleast one of: i) brightness and contrast within the region of the imageilluminated by the targeting bar 3510 of each sub-image; or ii)brightness and contrast within the regions of the image which are notilluminated by the targeting bar 3510 of each sub-image.

Step 3416 represents determining ratios (or weights) for combining eachof the first, second, and third channels to generate a grayscalecomposite image for further image processing and decoding. In moredetail, the intensity profile values of the second and third channels(or alternatively all three channels) may be input to a function whichgenerates a ratio (or weights) for combining the first, second, andthird channels. The function may be a look-up table which mapscombinations of ranges of each of the intensity profile values tocombinations of ratios or weights.

For example, eight values including i) the brightness and contrastwithin the region of the image illuminated by the targeting bar 3510 foreach of the second and third channels, and ii) the brightness andcontrast within the regions of the image which are not illuminated bythe targeting bar 3510 for each of the second and third channels may beinput to a multi-dimensional look-up table to generate percentage values(e.g., weights or ratios) for the first, second, and third channelimages. Different sets of input values may be used to determine thecombining ratios or weights.

In determining the ratios or weights for generating the composite image,a contribution (e.g., the ratio or weight) from a sub-image captured bya portion of the image sensor array most sensitive to the frequencyspectrum of the targeting illumination may be smaller than acontribution from the other two sub-images captured by the other twoportions of the image sensor array.

Alternatively, the contribution from a sub-image captured by a portionof the image sensor array most sensitive to the frequency spectrum ofthe targeting illumination may be zero. For example, consider a casewhere the first band, the second band, and the third band ofillumination are a red band, a green band, and a blue band,respectively, and the first sub-image, the second sub-image, and thethird sub-image are images captured by the portion of the image sensorbeing most sensitive to red, green, and blue illumination, respectively.If the band of targeting illumination passed by the optical filter 3762is a green band of illumination, the grayscale composite image may be acombination of the first and third sub-images. If the band of targetingillumination passed by the optical filter 3762 is a red band ofillumination, the grayscale composite image may be a combination of thesecond and third sub-images. If the band of targeting illuminationpassed by the optical filter 3762 is a blue band of illumination, thegrayscale composite image may be a combination of the first and secondsub-images.

Step 3418 represents creating a combined image. For each pixel of thegrayscale image, the digital gray level value of the composite image isthe result of summing: i) the pixel value of the first channel imagemultiplied by the first channel ratio (or weight); ii) the pixel valueof the second channel image multiplied by the second channel ratio (orweight); and iii) the pixel value of the third channel image multipliedby the third channel ratio (or weight).

As an example, depicted in FIG. 36A is a grayscale image resulting fromsumming, for each pixel of the image: i) the pixel value of the firstchannel image (blue) multiplied by the first channel ratio (0%); ii) thepixel value of the second channel image (green) multiplied by the secondchannel ratio (30%); and iii) the pixel value of the third channel image(red) multiplied by the third channel ratio (70%).

As another example, depicted in FIG. 36B is a grayscale image resultingfrom summing, for each pixel of the image: i) the pixel value of thefirst channel image (blue) multiplied by the first channel ratio (0%);ii) the pixel value of the second channel image (green) multiplied bythe second channel ratio (15%); and iii) the pixel value of the thirdchannel image (red) multiplied by the third channel ratio (85%).

A decoder function of the barcode reading application may receive thegrayscale composite image of the barcode and generate decoded datarepresenting data encoded in the barcode. A relay function of thebarcode reading application may then send the decoded data to a (remote)server, for example, via a wireless connection established between themobile device 18 and a network.

One or more of the features, functions, procedures, operations,components, elements, structures, etc. described in connection with anyone of the configurations described herein may be combined with one ormore of the functions, procedures, operations, components, elements,structures, etc. described in connection with any of the otherconfigurations described herein, where compatible.

The steps and/or actions of the methods described herein may beinterchanged with one another without departing from the scope of theclaims. In other words, unless a specific order of steps or actions isrequired for proper operation of the method that is being described, theorder and/or use of specific steps and/or actions may be modifiedwithout departing from the scope of the claims.

The claims are not limited to the specific implementations describedabove. Various modifications, changes and variations may be made in thearrangement, operation and details of the implementations describedherein without departing from the scope of the claims.

What is claimed is:
 1. A barcode reading system for a mobile device, themobile device comprising a processor, a memory, a camera comprising acolor image capture system including an image sensor array forgenerating a color image of a target area, and a white light source forgenerating illumination encompassing a first band of illumination, asecond band of illumination, and a third band of illumination, whereinthe color image comprises a first sub-image captured with a portion ofthe image sensor array sensitive to the first band of illumination, asecond sub-image captured with a portion of the image sensor arraysensitive to the second band of illumination, and a third sub-imagecaptured with a portion of the image sensor array sensitive to the thirdband of illumination, the barcode reading system comprising: a barcodereading accessory including an optic system positioned within a field ofillumination of the white light source when the barcode readingaccessory is secured to the mobile device, the optic system comprising:an optical filter for passing a fourth band of illumination generated bythe white light source, wherein one of a first portion of the imagesensor array, a second portion of the image sensor array, and a thirdportion of the image sensor array are more sensitive to the fourth bandof illumination than the other two portions; and a collimating optic fornarrowing the field of illumination of the white light source to producea targeting illumination pattern of the fourth band of illuminationpassed by the optical filter within the target area; and a barcodereading application stored in the memory and executable by theprocessor, the barcode reading application including: an image capturefunction for controlling the white light source and the camera tosimultaneously capture the color image of the target area illuminated byillumination generated by the white light source and filtered by theoptical filter; an image processing function for creating a grayscalecomposite image of the barcode within the target area by combining eachof the first sub-image, the second sub-image, and the third sub-imageusing weights, wherein a contribution from a sub-image captured by aportion of the image sensor array most sensitive to the fourth band ofillumination is smaller than a contribution from the other twosub-images captured by the other two portions of the image sensor array;a decoder function for receiving the grayscale composite image of thebarcode and generating decoded data representing data encoded in thebarcode; and a relay function for sending the decoded data to a remoteserver via a wireless connection established between the mobile deviceand a network.